Kanika Chawla Parth Shah Sowmith Boyanpalli MEMORY MANAGEMENT IN MOBILE ENVIRONMENT.

Slides:



Advertisements
Similar presentations
A Framework for Coarse-Grain Optimizations in the On-Chip Memory Hierarchy J. Zebchuk, E. Safi, and A. Moshovos.
Advertisements

Computer System Organization Computer-system operation – One or more CPUs, device controllers connect through common bus providing access to shared memory.
A KTEC Center of Excellence 1 Cooperative Caching for Chip Multiprocessors Jichuan Chang and Gurindar S. Sohi University of Wisconsin-Madison.
CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
Serverless Network File Systems. Network File Systems Allow sharing among independent file systems in a transparent manner Mounting a remote directory.
Study of Hurricane and Tornado Operating Systems By Shubhanan Bakre.
MANETs Routing Dr. Raad S. Al-Qassas Department of Computer Science PSUT
1 Lecture 12: Hardware/Software Trade-Offs Topics: COMA, Software Virtual Memory.
Network Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by: –Logging into the.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
Beneficial Caching in Mobile Ad Hoc Networks Bin Tang, Samir Das, Himanshu Gupta Computer Science Department Stony Brook University.
Paging and Virtual Memory. Memory management: Review  Fixed partitioning, dynamic partitioning  Problems Internal/external fragmentation A process can.
ICNP'061 Benefit-based Data Caching in Ad Hoc Networks Bin Tang, Himanshu Gupta and Samir Das Department of Computer Science Stony Brook University.
1 Chapter 8 Virtual Memory Virtual memory is a storage allocation scheme in which secondary memory can be addressed as though it were part of main memory.
Computer System Overview Chapter 1. Basic computer structure CPU Memory memory bus I/O bus diskNet interface.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
An Intelligent Cache System with Hardware Prefetching for High Performance Jung-Hoon Lee; Seh-woong Jeong; Shin-Dug Kim; Weems, C.C. IEEE Transactions.
1 The Mystery of Cooperative Web Caching 2 b b Web caching : is a process implemented by a caching proxy to improve the efficiency of the web. It reduces.
PRASHANTHI NARAYAN NETTEM.
CS252/Patterson Lec /28/01 CS 213 Lecture 10: Multiprocessor 3: Directory Organization.
CS401 presentation1 Effective Replica Allocation in Ad Hoc Networks for Improving Data Accessibility Takahiro Hara Presented by Mingsheng Peng (Proc. IEEE.
Cache Memories Effectiveness of cache is based on a property of computer programs called locality of reference Most of programs time is spent in loops.
Multiprocessor Cache Coherency
MULTICOMPUTER 1. MULTICOMPUTER, YANG DIPELAJARI Multiprocessors vs multicomputers Interconnection topologies Switching schemes Communication with messages.
Distributed Data Stores – Facebook Presented by Ben Gooding University of Arkansas – April 21, 2015.
The Zone Routing Protocol (ZRP)
Department of Computer Science Southern Illinois University Edwardsville Dr. Hiroshi Fujinoki and Kiran Gollamudi {hfujino,
AN OPTIMISTIC CONCURRENCY CONTROL ALGORITHM FOR MOBILE AD-HOC NETWORK DATABASES Brendan Walker.
CIS 725 Wireless networks. Low bandwidth High error rates.
Fault Tolerant and Mobility Aware Routing Protocol for Mobile Wireless Sensor Network Name : Tahani Abid Aladwani ID :
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking BGP, Flooding, Multicast routing.
Topics covered: Memory subsystem CSE243: Introduction to Computer Architecture and Hardware/Software Interface.
Computer Architecture Lecture 28 Fasih ur Rehman.
Lyon, June 26th 2006 ICPS'06: IEEE International Conference on Pervasive Services 2006 Routing and Localization Services in Self-Organizing Wireless Ad-Hoc.
1 Cache coherence CEG 4131 Computer Architecture III Slides developed by Dr. Hesham El-Rewini Copyright Hesham El-Rewini.
CMPE 421 Parallel Computer Architecture
CHAPTER 2: COMPUTER-SYSTEM STRUCTURES Computer system operation Computer system operation I/O structure I/O structure Storage structure Storage structure.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
July 30, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 8: Exploiting Memory Hierarchy: Virtual Memory * Jeremy R. Johnson Monday.
Dynamic Source Routing in ad hoc wireless networks Alexander Stojanovic IST Lisabon 1.
Introduction to DFS. Distributed File Systems A file system whose clients, servers and storage devices are dispersed among the machines of a distributed.
Chapter 8-2 : Multicomputers Multiprocessors vs multicomputers Multiprocessors vs multicomputers Interconnection topologies Interconnection topologies.
Mobile Data Access1 Replication, Caching, Prefetching and Hoarding for Mobile Computing.
GLOBAL EDGE SOFTWERE LTD1 R EMOTE F ILE S HARING - Ardhanareesh Aradhyamath.
Energy-Efficient Data Caching and Prefetching for Mobile Devices Based on Utility Huaping Shen, Mohan Kumar, Sajal K. Das, and Zhijun Wang P 邱仁傑.
CS.305 Computer Architecture Memory: Caches Adapted from Computer Organization and Design, Patterson & Hennessy, © 2005, and from slides kindly made available.
CPE232 Cache Introduction1 CPE 232 Computer Organization Spring 2006 Cache Introduction Dr. Gheith Abandah [Adapted from the slides of Professor Mary Irwin.
Memory Coherence in Shared Virtual Memory System ACM Transactions on Computer Science(TOCS), 1989 KAI LI Princeton University PAUL HUDAK Yale University.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems.
A Bandwidth Scheduling Algorithm Based on Minimum Interference Traffic in Mesh Mode Xu-Yajing, Li-ZhiTao, Zhong-XiuFang and Xu-HuiMin International Conference.
Wireless Cache Invalidation Schemes with Link Adaptation and Downlink Traffic Presented by Ying Jin.
Lectures 8 & 9 Virtual Memory - Paging & Segmentation System Design.
Antidio Viguria Ann Krueger A Nonblocking Quorum Consensus Protocol for Replicated Data Divyakant Agrawal and Arthur J. Bernstein Paper Presentation: Dependable.
1 Contents Memory types & memory hierarchy Virtual memory (VM) Page replacement algorithms in case of VM.
Operating Systems Distributed-System Structures. Topics –Network-Operating Systems –Distributed-Operating Systems –Remote Services –Robustness –Design.
Memory Hierarchy Ideal memory is fast, large, and inexpensive
Advanced Computer Networks
Multiprocessor Cache Coherency
Cache Memory Presentation I
任課教授:陳朝鈞 教授 學生:王志嘉、馬敏修
CMSC 611: Advanced Computer Architecture
Page Replacement.
Module IV Memory Organization.
Outline Midterm results summary Distributed file systems – continued
Effective Replica Allocation
The Network Layer Network Layer Design Issues:
Morgan Kaufmann Publishers Memory Hierarchy: Cache Basics
Slides developed by Dr. Hesham El-Rewini Copyright Hesham El-Rewini
Distributed Resource Management: Distributed Shared Memory
Presentation transcript:

Kanika Chawla Parth Shah Sowmith Boyanpalli MEMORY MANAGEMENT IN MOBILE ENVIRONMENT

CITATION Shigemori Yokoyama, Takahiro Okuda, Tadanori Mizuno and Takashi Watanabe, ”A Memory Management Architecture for a Mobile Computing Environment”. 2

MOTIVATION  Today we can communicate using our mobile phones even in remote areas.  But certain challenges still remain  Narrow bandwidth of wireless communication  Unstable connectivity  Limitations of battery at mobile terminals 3

THE MMM TECHNOLOGY  Above problems solved by controlling a part of mobile terminal’s memory and a part of server’s memory which are common to each other.  Achieves the following:  Synchronization of common data between mobile terminal and server  Increase in processing speed  Reduction in communication cost  Easy programming of applications  Power reduction 4

MMM ARCHITECTURE  Common memory used  Can be accessed by both mobile terminal and server 5

MMM ARCHITECTURE  Three main concepts used in the new MMM architecture are:  Cache memory: data is fetched from remote location and stored in local memory for easy access  Distributed shared memory: common address spaces are at physically distinct locations but have the same address.  Virtual memory: a part of common memory space of the server is used as virtual memory for the mobile terminal. 6

WHAT CAN BE ACHIEVED USING MMM  Applications can run faster  Do not need to program the network aspects to read/write from the server  All data available locally  Communication is more efficient  Only necessary data being communicated at necessary time  This technique can be implemented using additional hardware of convectional circuits 7

MEMORY MANAGEMNET SYSTEMS  The memory is managed using the following 5 key points:  Memory lines and control status field  Memory control status field and line status  Memory access and line transfer control  Resolution of line access conflict  Control of communication failure 8

MEMORY LINES AND CONTROL STATUS FIELD  Memory is divided into fixed areas called lines  Line sizes are between 16 Bytes – 4096 Bytes  Line unit handles the memory mapping between mobile terminal and server  Lines are further divided into blocks, where memory write back is handled  Block sizes are between 16 Bytes – 1024 Bytes  Further, The Control Status Fields control the memory line status.  Ensures memory consistency  i.e. lines on mobile terminal and server with same line number should have same data 9

MEMORY CONTROL STATUS FIELD AND LINE STATUS  Control status field is divided into three bits:  Valid bit: shows if the line is valid(1) or invalid  Copy bit: whether the line has been copied back to server/mobile terminal(1) or not  Dirty bits: whether write operation has been performed on the blocks. 10

MEMORY ACCESS AN DLINE TRANSFER CONTROL  In case of memory access,  The kind of memory operation is determined by the kind of memory access  The next memory line status is determined by current memory line status  The line transfer control and related line status control are performed in memory exception interrupt(MEI)  MEI is invoked by memory access 11

MEMORY EXCEPTION INTERRUPT  Communications between a mobile terminal and server to transfer the lines are executed in a memory exception interrupt  Taking some sample cases for memory access and line transfer control 12

SAMPLE MEMORY ACCESSES  If status is VC(m)= 100  Content is valid as V = 1, i.e. read/write has been successfully performed on mobile terminal  It has not been copied to the server yet as C = 0  If line status is invalid i.e. V(m) = 0 or old VC(m) = 11  The MEI occurs to achieve memory consistency  Exception routines on mobile terminal and server communicate to transfer designated line  When line is requested from mobile terminal, a remote interrupt occurs on the server 13

 For V(m)=0, content is transferred to the mobile terminal  For VC(m)=11, then D(s) bits are further inspected  if D(s) bit of a block is 1 then corresponding data is transferred  If all D(s) are 0 then no transfer because no alterations have been done VC(s) is then set to 11 and interrupt routine is terminated 14

 In mobile terminal’s interrupt routine, during the transfer of data from server, the line status becomes  VCD(m) = 100 which corresponds to the newest line  Again if the write operation is performed D(m) bits are set 15

RESOLUTION OF LINE ACCESS CONFLICT  A deadlock situation occurs if the mobile terminal and server request the same line at the same time.  To prevent this the remote interrupt is turned off between the memory exception and completion of the first instructions execution after the end of interruption  By this method when the same line is used the memory line is accessed alternatively between the mobile terminal and the server 16

CONTROL OF COMMUNICATION FAILURE  In the case of exception communication should be established.  If the communication fails the control program reports the status of memory to the application 17

EXPERIMENTAL SETUP MMM system can be realized by using a processor with a standard architecture 18

LINE SIZE VS DATA TRANSFER TIME 19

COMPARISON OF MMM AND A CONVENTIONAL MEMORY SYSTEM ON A MOBILE TERMINAL 20

COMPARISON OF MMM AND A CONVENTIONAL MEMORY SYSTEM ON A SERVER 21

 Data in the paper is redundant with lot of information repeated  It doesn’t discuss any fault tolerant Limitations 22

CONCLUSION  MMM is the most preferable memory architecture for mobile terminals and servers.  Introducing MMM achieves synchronisation of common data on the moobile terminal and server.  The applcation executes faster and efficiency of communication system increases by decreasing the communication cost and saving power.  Prefetching multiple lines increases the efficiency. 23

Presented at 2009 IEEE International Advance Computing Conference (IACC 2009) By: G. Anandharaj, Dr. R. Anitha A Distributed Cache Management Architecture for Mobile Computing Environments 24

 Presents an effective technique to improve performance in a mobile environment  Caches frequently accessed data items on client side  Reduces data access latency as data access request can satisfied from the local cache or active node cache Introduction 25

 Cache management in mobile environment includes following issues to be addresses:  Cache discovery algorithm :- Efficiently discover, select and deliver requested data from neighboring nodes  Cache admission control: - Decides what data to cache  Cache consistency algorithm: - Ensures no stale data are present  Cache replacement algorithm: - Decides which data to replace Introduction 26

 Goal: to reduce the caching overhead and provide optimal consistency and replacement.  To improve the network utilization, reduce the search latency, bandwidth and energy consumption. Distributed Cache Management Architecture (CCCM) 27

 Mobile Computing Network  Geographic area divided into cells  Cells consists of Base Station (BS) and Mobile Terminals (MT)  Intra-cell and Inter-cell communication managed by BSs.  MTs communicate with BS by wireless network  Mobile network with n cells C1, C2, …, Cn  For each cell Ci, DSi is database server that keep pieces of information, that is accessed by other systems  S1, S2, … Sm are the clients in each cell. Network Model 28

Tree Based Database Architecture 29

 The different DSs may be considered as mobile networks owned by different service providers.  Communication between DSs takes place only through their root databases Each cell is controlled by a DS2.  Each DS2 is co located with a BS, which performs query processing on a query arrival.  A number of DS2s are clustered into one DS1and several DSIs are connected to a single DSO.  The DSO maintains a location profile for each mobile client currently residing in its service area. It consists of a record for each client in the entire mobile system. Tree Based Database Architecture 30

 Index file & Data File  Index file points to the location profile of mobile clients in data file  Client location profile contains pointer to DS of one level down the hierarchy of the client Organization of Databases Index FileData FileDS 31

1. Client C1 moves from one DS2 to another DS2  Sends request message to associated DS2 which routes it to DS1 2. If DS1 remains same then old DS2 is updated with new DS2, old DS2 gets cancellation message  If DS1 changes, DS0 updates the old DS1 with new DS1, old DS1 gets cancellation message, New entry in DS2 3. Old DS2 removes the entry and sends the location profile to new DS2 4. New DS2 adds new record and stores the location profile Location Update Procedure 32

 Neighboring active slides form a cooperative cache system  In case of data miss in the local cache, client searches in its zone.  Active node decided based on weight Wi = (BWi + SPi + CRi ) / ALi  Vector W = {Si, Wi}  All the nodes above a cutoff are Active nodes Sk, W > Beta  Database server caches data into active nodes Distributed Cache Management Architecture (DCMA) – Cache Placement

 Determines where the requested data is located  The list Sk is broadcasted to all clients, once it is created  For a miss, node sends request packet to active nodes  Active node having data sends ack packet to sender node  Ack contain Timestamp and Weight  Based on this information, sender node requests data from best active client with a confirm packet  Best client sends requested data Cache Discovery Algorithm

 Update message is sent to the nearest client in list Sk  Ack sent and forwards update to next client in list  Procedure repeats for all nodes until ack received  The sender propagates the data with new timestamp to all clients sending ack Cache Consistency Algorithm

 Least Relevant Value replacement policy  Based on:  Access probability  Distance: Caches data for farther node; saves bandwidth and reduces latency  Size: Larger cache block makes room for more data Cache Replacement Algorithm

Experimental Results

Downlink Traffic Vs The Query Generation Time 38

average query latency as a function of Tquery. 39

Average End-to-end Delay For Different Traffic Rates 40

Average Throughput Received For Different Cache Sizes 41

1. No fault tolerant mechanism 2. May degrade performance Pitfalls

Conclusion  DCMA (Distributed cache management architecture ) includes cache placement, discovery, consistency and replacement techniques  It provided efficient technique for location update in the case of moving clients.  It achieves lower latency, reduced packet loss, reduced network bandwidth consumption, reduced data server workload. 43

Questions & Discussion 44