From gulati at rice.edu Wed Apr 4 02:51:46 2007 From: gulati at rice.edu (Ajay Gulati) Date: Wed, 4 Apr 2007 00:51:46 -0600 Subject: [Disksim-users] DiskSim for linux (hopefully without compilation issues) Message-ID: <4c2098aa0704032351v5dbd0503hf3649c71fbecb530@mail.gmail.com> Hi All, There have been some emails regarding complitation problems with DiskSim-3.0on linux. I have put up a version of disksim on my webpage, that should compile on linux without much work. Once you have unzipped and untarred the file, there will be a file in main directory called - HOW-TO-COMPILE.Ajay, that talks about detailed instructions for compiling. The files in various directories have been suitably modified to make it work. I have tested it on Ubuntu, with gcc-4.0.3, flex 2.5.31, bison (GNU Bison) 2.1 and it seems to compile fine. If it works for you, please let me know some details of your setup and I will add it to the documentation in the file mentioned above. The url for my webpage is: www.cs.rice.edu/~gulati Thanks Ajay -------------- next part -------------- An HTML attachment was scrubbed... URL: From ll2 at rice.edu Wed Apr 4 11:14:02 2007 From: ll2 at rice.edu (Lanyue Lu) Date: Wed, 4 Apr 2007 11:14:02 -0400 Subject: [Disksim-users] Re: Disksim-users Digest, Vol 19, Issue 1 References: <20070404160010.1367889E5@sos.ece.cmu.edu> Message-ID: <200704041114020626140@rice.edu> Hi, Thanks a lot for your sharing, it works very well on my machine. Great job ! Regards, ------------------ Lanyue Lu 2007-04-04 ------------------------------------------------------------- ????disksim-users-request ?????2007-04-04 12:00:18 ????disksim-users at ece.cmu.edu ??? ???Disksim-users Digest, Vol 19, Issue 1 Send Disksim-users mailing list submissions to disksim-users at ece.cmu.edu To subscribe or unsubscribe via the World Wide Web, visit https://sos.ece.cmu.edu/mailman/listinfo/disksim-users or, via email, send a message with subject or body 'help' to disksim-users-request at ece.cmu.edu You can reach the person managing the list at disksim-users-owner at ece.cmu.edu When replying, please edit your Subject line so it is more specific than "Re: Contents of Disksim-users digest..." Today's Topics: 1. DiskSim for linux (hopefully without compilation issues) (Ajay Gulati) ---------------------------------------------------------------------- Message: 1 Date: Wed, 4 Apr 2007 00:51:46 -0600 From: "Ajay Gulati" Subject: [Disksim-users] DiskSim for linux (hopefully without compilation issues) To: "shubhada nandarshi" Cc: disksim-users Message-ID: <4c2098aa0704032351v5dbd0503hf3649c71fbecb530 at mail.gmail.com> Content-Type: text/plain; charset="iso-8859-1" Hi All, There have been some emails regarding complitation problems with DiskSim-3.0on linux. I have put up a version of disksim on my webpage, that should compile on linux without much work. Once you have unzipped and untarred the file, there will be a file in main directory called - HOW-TO-COMPILE.Ajay, that talks about detailed instructions for compiling. The files in various directories have been suitably modified to make it work. I have tested it on Ubuntu, with gcc-4.0.3, flex 2.5.31, bison (GNU Bison) 2.1 and it seems to compile fine. If it works for you, please let me know some details of your setup and I will add it to the documentation in the file mentioned above. The url for my webpage is: www.cs.rice.edu/~gulati Thanks Ajay -------------- next part -------------- An HTML attachment was scrubbed... URL: http://sos.ece.cmu.edu/pipermail/disksim-users/attachments/20070404/dd9503ba/attachment-0001.html ------------------------------ _______________________________________________ Disksim-users mailing list Disksim-users at ece.cmu.edu https://sos.ece.cmu.edu/mailman/listinfo/disksim-users End of Disksim-users Digest, Vol 19, Issue 1 ******************************************** From yipkeikwok at gmail.com Tue Apr 24 13:05:11 2007 From: yipkeikwok at gmail.com (YipKei Kwok) Date: Tue, 24 Apr 2007 11:05:11 -0600 Subject: [Disksim-users] Per-process disk time Message-ID: Hi, Disksim provides disk statistics data such as `Disk Transfer time stats' and `Disk Access time stats', as described on page 42 of the reference manual v3.0. All these data are aggregated, i.e. time spent on disks for all processes. Question: Does it provide per-process time disk time statistics, as well? For e.g., disk time, or %age of disk time, spent on process 1. Thanks! -Yipkei -- Web site: http://360.yahoo.com/yipkeikwok http://www.mcs.csueastbay.edu/~ykwok/ email addresses: yipkeikwok at gmail dot com ykwok2 at utep dot edu ICQ UIN: 2309842 Google Talk ID: yipkeikwok at gmail dot com Yahoo! Messenger ID: yipkeikwok MSN Messenger ID: yipkeikwok at hotmail dot com From ganger at ece.cmu.edu Tue Apr 24 13:57:26 2007 From: ganger at ece.cmu.edu (Greg Ganger) Date: Tue, 24 Apr 2007 13:57:26 -0400 (EDT) Subject: [Disksim-users] Per-process disk time In-Reply-To: References: Message-ID: No, it doesn't. Greg On Tue, 24 Apr 2007, YipKei Kwok wrote: > Hi, > > Disksim provides disk statistics data such as `Disk Transfer time > stats' and `Disk Access time stats', as described on page 42 of the > reference manual v3.0. > > All these data are aggregated, i.e. time spent on disks for all > processes. Question: Does it provide per-process time disk time > statistics, as well? For e.g., disk time, or %age of disk time, spent > on process 1. > > Thanks! > > -Yipkei > > -- > Web site: > http://360.yahoo.com/yipkeikwok > http://www.mcs.csueastbay.edu/~ykwok/ > email addresses: > yipkeikwok at gmail dot com > ykwok2 at utep dot edu > ICQ UIN: 2309842 > Google Talk ID: yipkeikwok at gmail dot com > Yahoo! Messenger ID: yipkeikwok > MSN Messenger ID: yipkeikwok at hotmail dot com > _______________________________________________ > Disksim-users mailing list > Disksim-users at ece.cmu.edu > https://sos.ece.cmu.edu/mailman/listinfo/disksim-users > From yipkeikwok at gmail.com Tue Apr 24 14:01:25 2007 From: yipkeikwok at gmail.com (YipKei Kwok) Date: Tue, 24 Apr 2007 12:01:25 -0600 Subject: [Disksim-users] Per-process disk time In-Reply-To: References: Message-ID: Thanks for the prompt response, Greg. So, any suggestion on how to implement this additional feature? Thanks. -Yipkei On 4/24/07, Greg Ganger wrote: > > No, it doesn't. > > Greg > > > On Tue, 24 Apr 2007, YipKei Kwok wrote: > > > Hi, > > > > Disksim provides disk statistics data such as `Disk Transfer time > > stats' and `Disk Access time stats', as described on page 42 of the > > reference manual v3.0. > > > > All these data are aggregated, i.e. time spent on disks for all > > processes. Question: Does it provide per-process time disk time > > statistics, as well? For e.g., disk time, or %age of disk time, spent > > on process 1. > > > > Thanks! > > > > -Yipkei > > > > -- > > Web site: > > http://360.yahoo.com/yipkeikwok > > http://www.mcs.csueastbay.edu/~ykwok/ > > email addresses: > > yipkeikwok at gmail dot com > > ykwok2 at utep dot edu > > ICQ UIN: 2309842 > > Google Talk ID: yipkeikwok at gmail dot com > > Yahoo! Messenger ID: yipkeikwok > > MSN Messenger ID: yipkeikwok at hotmail dot com > > _______________________________________________ > > Disksim-users mailing list > > Disksim-users at ece.cmu.edu > > https://sos.ece.cmu.edu/mailman/listinfo/disksim-users > > > -- "Providence has given to our people the choice of their rulers and it is the duty as well as the privilege and interest of our Christian Nation to select and prefer Christians for their rulers." - John Jay "I can do all things through Christ who Strengthens me." - Philippians 4:13 -- Web site: http://360.yahoo.com/yipkeikwok http://www.mcs.csueastbay.edu/~ykwok/ email addresses: yipkeikwok at gmail dot com ykwok2 at utep dot edu ICQ UIN: 2309842 Google Talk ID: yipkeikwok at gmail dot com Yahoo! Messenger ID: yipkeikwok MSN Messenger ID: yipkeikwok at hotmail dot com From ganger at ece.cmu.edu Tue Apr 24 14:27:03 2007 From: ganger at ece.cmu.edu (Greg Ganger) Date: Tue, 24 Apr 2007 14:27:03 -0400 (EDT) Subject: [Disksim-users] Per-process disk time In-Reply-To: References: Message-ID: No specific suggestion... information about process ID would need to be propagated with every request and then lower level components would need to keep separate per-process statistics. Not going to be trivial, but certainly not impossible either. Good luck! Greg On Tue, 24 Apr 2007, YipKei Kwok wrote: > Thanks for the prompt response, Greg. > > So, any suggestion on how to implement this additional feature? > > Thanks. > > -Yipkei > > On 4/24/07, Greg Ganger wrote: >> >> No, it doesn't. >> >> Greg >> >> >> On Tue, 24 Apr 2007, YipKei Kwok wrote: >> >> > Hi, >> > >> > Disksim provides disk statistics data such as `Disk Transfer time >> > stats' and `Disk Access time stats', as described on page 42 of the >> > reference manual v3.0. >> > >> > All these data are aggregated, i.e. time spent on disks for all >> > processes. Question: Does it provide per-process time disk time >> > statistics, as well? For e.g., disk time, or %age of disk time, spent >> > on process 1. >> > >> > Thanks! >> > >> > -Yipkei >> > >> > -- >> > Web site: >> > http://360.yahoo.com/yipkeikwok >> > http://www.mcs.csueastbay.edu/~ykwok/ >> > email addresses: >> > yipkeikwok at gmail dot com >> > ykwok2 at utep dot edu >> > ICQ UIN: 2309842 >> > Google Talk ID: yipkeikwok at gmail dot com >> > Yahoo! Messenger ID: yipkeikwok >> > MSN Messenger ID: yipkeikwok at hotmail dot com >> > _______________________________________________ >> > Disksim-users mailing list >> > Disksim-users at ece.cmu.edu >> > https://sos.ece.cmu.edu/mailman/listinfo/disksim-users >> > >> > > > -- > "Providence has given to our people the choice of their rulers and it > is the duty as well as the privilege and interest of our Christian > Nation to select and prefer Christians for their rulers." > - John Jay > > "I can do all things through Christ who Strengthens me." - Philippians 4:13 > > -- > Web site: > http://360.yahoo.com/yipkeikwok > http://www.mcs.csueastbay.edu/~ykwok/ > email addresses: > yipkeikwok at gmail dot com > ykwok2 at utep dot edu > ICQ UIN: 2309842 > Google Talk ID: yipkeikwok at gmail dot com > Yahoo! Messenger ID: yipkeikwok > MSN Messenger ID: yipkeikwok at hotmail dot com > From n080di at yahoo.com Wed Apr 25 22:34:52 2007 From: n080di at yahoo.com (Nobody Nobody Nobody) Date: Wed, 25 Apr 2007 19:34:52 -0700 (PDT) Subject: [Disksim-users] FIFO replacement in the smart controller Message-ID: <997795.59002.qm@web55109.mail.re4.yahoo.com> Hello, Although page 22 of the manual mentions "FIFO" as a choice for the replacement policy for caches in a smart controller, I'd like to know whether this part has been completely implemented in the latest version of DiskSim. It appears that once the cache is full, lines do not get replaced under the FIFO policy. Whoever confirms or denies this receives my most sincere thanks. -Sue Doughnum. --------------------------------- Ahhh...imagining that irresistible "new car" smell? Check outnew cars at Yahoo! Autos. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ganger at ece.cmu.edu Thu Apr 26 11:18:36 2007 From: ganger at ece.cmu.edu (Greg Ganger) Date: Thu, 26 Apr 2007 11:18:36 -0400 (EDT) Subject: [Disksim-users] FIFO replacement in the smart controller In-Reply-To: <997795.59002.qm@web55109.mail.re4.yahoo.com> References: <997795.59002.qm@web55109.mail.re4.yahoo.com> Message-ID: The person who wrote that code did it so long ago that he can't verify that it still works. So many years later, it wouldn't shock me to learn that it doesn't work correctly, but I also doubt that that code changed much (at all?) since it was originally written. Sorry I couldn't be more definitive. Greg On Wed, 25 Apr 2007, Nobody Nobody Nobody wrote: > Hello, > > Although page 22 of the manual mentions "FIFO" as a choice for the replacement policy for caches in a smart controller, I'd like to know whether this part has been completely implemented in the latest version of DiskSim. It appears that once the cache is full, lines do not get replaced under the FIFO policy. Whoever confirms or denies this receives my most sincere thanks. > > -Sue Doughnum. > > > > > > --------------------------------- > Ahhh...imagining that irresistible "new car" smell? > Check outnew cars at Yahoo! Autos. From n080di at yahoo.com Thu Apr 26 18:43:40 2007 From: n080di at yahoo.com (Nobody Nobody Nobody) Date: Thu, 26 Apr 2007 15:43:40 -0700 (PDT) Subject: [Disksim-users] FIFO, RANDOM, and LIFO replacement in the smart controller In-Reply-To: Message-ID: <334701.68398.qm@web55110.mail.re4.yahoo.com> Thanks. I'd go further and hazard a guess that there does not even exist any code within DiskSim that implements these (everything except LRU) policies although they can be "enabled" through the parameter file. Thanks again. --------------------------------- Ahhh...imagining that irresistible "new car" smell? Check outnew cars at Yahoo! Autos. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ganger at ece.cmu.edu Thu Apr 26 20:26:31 2007 From: ganger at ece.cmu.edu (Greg Ganger) Date: Thu, 26 Apr 2007 20:26:31 -0400 (EDT) Subject: [Disksim-users] FIFO, RANDOM, and LIFO replacement in the smart controller In-Reply-To: <334701.68398.qm@web55110.mail.re4.yahoo.com> References: <334701.68398.qm@web55110.mail.re4.yahoo.com> Message-ID: I'd suggest grepping the code for words like FIFO before drawing that conclusion... there is definitely code there (in disksim_cachemem.c), but I can't vouch for the implementation's correctness. Greg On Thu, 26 Apr 2007, Nobody Nobody Nobody wrote: > Thanks. I'd go further and hazard a guess that there does not even exist any > code within DiskSim that implements these (everything except LRU) > policies although they can be "enabled" through the parameter file. > > Thanks again. > > > > --------------------------------- > Ahhh...imagining that irresistible "new car" smell? > Check outnew cars at Yahoo! Autos. From n080di at yahoo.com Thu Apr 26 20:54:28 2007 From: n080di at yahoo.com (Nobody Nobody Nobody) Date: Thu, 26 Apr 2007 17:54:28 -0700 (PDT) Subject: [Disksim-users] FIFO, RANDOM, and LIFO replacement in the smart controller In-Reply-To: Message-ID: <860022.36195.qm@web55113.mail.re4.yahoo.com> In fact, a careful reading of the code in disksim_cachemem.c does not reveal any such, let alone grepping. Greg Ganger wrote: I'd suggest grepping the code for words like FIFO before drawing that conclusion... there is definitely code there (in disksim_cachemem.c), but I can't vouch for the implementation's correctness. Greg On Thu, 26 Apr 2007, Nobody Nobody Nobody wrote: > Thanks. I'd go further and hazard a guess that there does not even exist any > code within DiskSim that implements these (everything except LRU) > policies although they can be "enabled" through the parameter file. > > Thanks again. > > > > --------------------------------- > Ahhh...imagining that irresistible "new car" smell? > Check outnew cars at Yahoo! Autos. --------------------------------- Ahhh...imagining that irresistible "new car" smell? Check outnew cars at Yahoo! Autos. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ganger at ece.cmu.edu Thu Apr 26 20:58:15 2007 From: ganger at ece.cmu.edu (Greg Ganger) Date: Thu, 26 Apr 2007 20:58:15 -0400 (EDT) Subject: [Disksim-users] FIFO, RANDOM, and LIFO replacement in the smart controller In-Reply-To: <860022.36195.qm@web55113.mail.re4.yahoo.com> References: <860022.36195.qm@web55113.mail.re4.yahoo.com> Message-ID: hmm, that is strange. Here is what I get: % grep FIFO * grep: CVS: Is a directory disksim_bus.c:#define FIFO_ARB 2 disksim_bus.c: case FIFO_ARB: disksim_cachemem.c: } else if ((cache->replacepolicy != CACHE_REPLACE_FIFO) && (cache->replacepolicy != CACHE_REPLACE_SLRU)) { disksim_cachemem.h:#define CACHE_REPLACE_FIFO 1 (The bus stuff is not relevant.) Greg On Thu, 26 Apr 2007, Nobody Nobody Nobody wrote: > In fact, a careful reading of the code in disksim_cachemem.c does not reveal any such, let alone grepping. > > Greg Ganger wrote: > I'd suggest grepping the code for words like FIFO before drawing > that conclusion... there is definitely code there (in disksim_cachemem.c), > but I can't vouch for the implementation's correctness. > > Greg > > > On Thu, 26 Apr 2007, Nobody Nobody Nobody wrote: > >> Thanks. I'd go further and hazard a guess that there does not even exist any >> code within DiskSim that implements these (everything except LRU) >> policies although they can be "enabled" through the parameter file. >> >> Thanks again. >> >> >> >> --------------------------------- >> Ahhh...imagining that irresistible "new car" smell? >> Check outnew cars at Yahoo! Autos. > > > > --------------------------------- > Ahhh...imagining that irresistible "new car" smell? > Check outnew cars at Yahoo! Autos. From n080di at yahoo.com Thu Apr 26 21:43:45 2007 From: n080di at yahoo.com (Nobody Nobody Nobody) Date: Thu, 26 Apr 2007 18:43:45 -0700 (PDT) Subject: [Disksim-users] FIFO, RANDOM, and LIFO replacement in the smart controller In-Reply-To: Message-ID: <202647.83060.qm@web55112.mail.re4.yahoo.com> Same here. When replacement policy is FIFO, and once the cache is full, cache_replace_waitforline( ) is the fate of every request. It appears that the cache stops functioning after that; perhaps cache_get_replace_startpoint( ) returns NULL for FIFO when the cache is full. Here's some debugging output (cache size 640, FIFO): Enter cache_get_block: opid 66, devno 1, blkno 160, bcount 8 ==> disksim_cachemem.c(314): cachemem_get_cachetype (cache_def *cache) ==> disksim_cachemem.c(1892): (**donefunc)(void *, ioreq_event *), void *doneparam) Entered cache_get_block: totalreqs = 68 cachereadssofar 256 Entered cache_get_block: rw 1, devno 1, blkno 160, size 8 ==> disksim_cachemem.c(1620): cache_read_continue (cache_def *cache, cache_event *readdesc) ==> disksim_cachemem.c(412): cache_find_atom (cache_def *cache, int devno, int lbn) ==> disksim_cachemem.c(1386): cache_allocate_space (cache_def *cache, int lbn, int size, cache_event *rwdesc) ==> disksim_cachemem.c(1287): *cache_allocate_space_continue (cache_def *cache, cache_event *allocdesc) ==> disksim_cachemem.c(1267): cache_get_free_atom (cache_def *cache, int lbn, cache_atom **ret, cache_event *allocdesc) ==> disksim_cachemem.c(1196): cache_replace (cache_def *cache, int set, cache_event *allocdesc) ==> disksim_cachemem.c(625): *cache_get_replace_startpoint (cache_def *cache, int set) ==> disksim_cachemem.c(607): cache_replace_waitforline (cache_def *cache, cache_event *allocdesc) entered cache_replace_waitforline: linelocked 0 Enter cache_get_block: opid 67, devno 3, blkno 160, bcount 8, mj_lbn 640, ==> disksim_cachemem.c(314): cachemem_get_cachetype (cache_def *cache) ==> disksim_cachemem.c(1892): (**donefunc)(void *, ioreq_event *), void *doneparam) Entered cache_get_block: totalreqs = 68 cachereads 256 Entered cache_get_block: rw 1, devno 3, blkno 160, size 8 ==> disksim_cachemem.c(1620): cache_read_continue (cache_def *cache, cache_event *readdesc) (repeats ...) Greg Ganger wrote: hmm, that is strange. Here is what I get: % grep FIFO * grep: CVS: Is a directory disksim_bus.c:#define FIFO_ARB 2 disksim_bus.c: case FIFO_ARB: disksim_cachemem.c: } else if ((cache->replacepolicy != CACHE_REPLACE_FIFO) && (cache->replacepolicy != CACHE_REPLACE_SLRU)) { disksim_cachemem.h:#define CACHE_REPLACE_FIFO 1 (The bus stuff is not relevant.) Greg On Thu, 26 Apr 2007, Nobody Nobody Nobody wrote: > In fact, a careful reading of the code in disksim_cachemem.c does not reveal any such, let alone grepping. > > Greg Ganger wrote: > I'd suggest grepping the code for words like FIFO before drawing > that conclusion... there is definitely code there (in disksim_cachemem.c), > but I can't vouch for the implementation's correctness. > > Greg > > > On Thu, 26 Apr 2007, Nobody Nobody Nobody wrote: > >> Thanks. I'd go further and hazard a guess that there does not even exist any >> code within DiskSim that implements these (everything except LRU) >> policies although they can be "enabled" through the parameter file. >> >> Thanks again. >> >> >> >> --------------------------------- >> Ahhh...imagining that irresistible "new car" smell? >> Check outnew cars at Yahoo! Autos. > > > > --------------------------------- > Ahhh...imagining that irresistible "new car" smell? > Check outnew cars at Yahoo! Autos. --------------------------------- Ahhh...imagining that irresistible "new car" smell? Check outnew cars at Yahoo! Autos. -------------- next part -------------- An HTML attachment was scrubbed... URL: From yipkeikwok at gmail.com Mon Apr 30 00:20:58 2007 From: yipkeikwok at gmail.com (YipKei Kwok) Date: Sun, 29 Apr 2007 22:20:58 -0600 Subject: [Disksim-users] process fairness Message-ID: Hi, Currently, Disksim reports disk performance statistics such as access time and transfer time in an aggregated manner, instead of in a per-process basis. I have modified Disksim so that per-process disk statistics could be shown. However, the problem is that, even though the processes are absolutely identical (except pid, of course), some processes generates almost 3 times more requests than others, when internal synthesized workload is used, while I believe that identical, or almost, number of requests should be generated by each process. Here is a brief description (w./ some details omitted) on how I implement it. disksim_global.h - create a new member in the structure ioreq_event disksim_synthio.c: synthio_appendio() - copy pid from process *procp to ioreq_event *new disksim_diskctlr.c: disk_buffer_sector_done() - extract pid from ioreq_event *curr - then, pass the pid to disk_buffer_request_complete() Note: the same for disk_got_remapped_sector() disksim_ctlr.c: disk_buffer_request_complete() - add the new parameter: int pid - pass pid to disk_acctimestats() disksim_disk.c: disk_acctimestats() - add the new parameter: int pid Here is the configuration of each process. disksim_synthgen { # generator 3 Storage capacity per device = 8224032, devices = [ org0 ], Blocking factor = 8, Probability of sequential access = 0.2, Probability of local access = 0.3, Probability of read access = 0.5, Probability of time-critical request = 0.1, Probability of time-limited request = 0.3, Time-limited think times = [ normal, 30.0, 100.0 ], General inter-arrival times = [ exponential, 0.0, 10.0 ], Sequential inter-arrival times = [ exponential, 0.0, 10.0 ], Local inter-arrival times = [ exponential, 0.0, 10.0 ], Local distances = [ normal, 0.0, 40000.0 ], Sizes = [ exponential, 0.0, 8.0 ] } # end of generator 3 System topology: RAID 0 with 4 disks. Number of simulated processes: 4 Here are the results (results are repeatable): 1. "Number of I/O requests to generate = 20 process1: 3 requests, process 2: 5requests, process 3: 8requests, process 4: 1 requests 2. "Number of I/O requests to generate = 30 process1: 6 reqs, process 2: 11 reqs, process 3: 16 reqs, process 4: 1 reqs 3. "Number of I/O requests to generate = 40 process1: 9 reqs, process 2: 22 reqs, process 3: 31 reqs, process 4: 3 reqs 4. "Number of I/O requests to generate = 1000 process1: 132 reqs, process 2: 237 reqs, process 3: 399 reqs, process 4: 112 reqs 5. "Number of I/O requests to generate = 100000 process1: 13544 reqs, process 2: 22985 reqs, process 3: 38455 reqs, process 4: 11420 reqs My questions are: 1. Am I doing it in a right way? Or, is there any better way? 2. Does anyone encounter the same problem? 3. How can I fix it? Any suggestion? Thanks! -Yipkei -- Web site: http://360.yahoo.com/yipkeikwok http://www.mcs.csueastbay.edu/~ykwok/ email addresses: yipkeikwok at gmail dot com ykwok2 at utep dot edu ICQ UIN: 2309842 Google Talk ID: yipkeikwok at gmail dot com Yahoo! Messenger ID: yipkeikwok MSN Messenger ID: yipkeikwok at hotmail dot com From ganger at ece.cmu.edu Mon Apr 30 00:31:04 2007 From: ganger at ece.cmu.edu (Greg Ganger) Date: Mon, 30 Apr 2007 00:31:04 -0400 (EDT) Subject: [Disksim-users] process fairness In-Reply-To: References: Message-ID: That I know of, no effort was ever put into ensuring fairness among synthetic workload generators in DiskSim, so it would not surprise me if the scheduler were not fair. I don't remember what it does, off hand. Greg On Sun, 29 Apr 2007, YipKei Kwok wrote: > Hi, > > Currently, Disksim reports disk performance statistics such as access > time and transfer time in an aggregated manner, instead of in a > per-process basis. > > I have modified Disksim so that per-process disk statistics could be > shown. However, the problem is that, even though the processes are > absolutely identical (except pid, of course), some processes generates > almost 3 times more requests than others, when internal synthesized > workload is used, while I believe that identical, or almost, number of > requests should be generated by each process. > > Here is a brief description (w./ some details omitted) on how I implement > it. > > disksim_global.h > - create a new member in the structure ioreq_event > > disksim_synthio.c: synthio_appendio() > - copy pid from process *procp to ioreq_event *new > > disksim_diskctlr.c: disk_buffer_sector_done() > - extract pid from ioreq_event *curr > - then, pass the pid to disk_buffer_request_complete() > Note: the same for disk_got_remapped_sector() > > disksim_ctlr.c: disk_buffer_request_complete() > - add the new parameter: int pid > - pass pid to disk_acctimestats() > > disksim_disk.c: disk_acctimestats() > - add the new parameter: int pid > > Here is the configuration of each process. > disksim_synthgen { # generator 3 > Storage capacity per device = 8224032, > devices = [ org0 ], > Blocking factor = 8, > Probability of sequential access = 0.2, > Probability of local access = 0.3, > Probability of read access = 0.5, > Probability of time-critical request = 0.1, > Probability of time-limited request = 0.3, > Time-limited think times = [ normal, 30.0, 100.0 ], > General inter-arrival times = [ exponential, 0.0, 10.0 ], > Sequential inter-arrival times = [ exponential, 0.0, 10.0 ], > Local inter-arrival times = [ exponential, 0.0, 10.0 ], > Local distances = [ normal, 0.0, 40000.0 ], > Sizes = [ exponential, 0.0, 8.0 ] > } # end of generator 3 > > System topology: RAID 0 with 4 disks. > > Number of simulated processes: 4 > > Here are the results (results are repeatable): > 1. "Number of I/O requests to generate = 20 > process1: 3 requests, process 2: 5requests, process 3: 8requests, > process 4: 1 requests > > 2. "Number of I/O requests to generate = 30 > process1: 6 reqs, process 2: 11 reqs, process 3: 16 reqs, process 4: 1 reqs > > 3. "Number of I/O requests to generate = 40 > process1: 9 reqs, process 2: 22 reqs, process 3: 31 reqs, process 4: 3 reqs > > 4. "Number of I/O requests to generate = 1000 > process1: 132 reqs, process 2: 237 reqs, process 3: 399 reqs, process > 4: 112 reqs > > 5. "Number of I/O requests to generate = 100000 > process1: 13544 reqs, process 2: 22985 reqs, process 3: 38455 reqs, > process 4: 11420 reqs > > My questions are: > 1. Am I doing it in a right way? Or, is there any better way? > 2. Does anyone encounter the same problem? > 3. How can I fix it? Any suggestion? > > Thanks! > > -Yipkei > > -- > Web site: > http://360.yahoo.com/yipkeikwok > http://www.mcs.csueastbay.edu/~ykwok/ > email addresses: > yipkeikwok at gmail dot com > ykwok2 at utep dot edu > ICQ UIN: 2309842 > Google Talk ID: yipkeikwok at gmail dot com > Yahoo! Messenger ID: yipkeikwok > MSN Messenger ID: yipkeikwok at hotmail dot com > _______________________________________________ > Disksim-users mailing list > Disksim-users at ece.cmu.edu > https://sos.ece.cmu.edu/mailman/listinfo/disksim-users >