Date: | Tue, 29 Dec 2009 01:09:03 -0800 (PST) |
---|---|
From: | Muhammad abid Mughal <mabidm_pieas@xxxxxxxxx> |
Subject: | Re: [Gems-users] Ruby for x86 machine |
Hi, There are three cases 1. Opal + Ruby 2. Simics(Sparc)+ Ruby and 3. Simics (x86) + Ruby. You have performed the first one but to perform 2nd or 3rd you have to follow: If you are using Simics and Ruby then for every memory operation(ie ld/st/atomic/ifetch/prefetch/dma/io, etc) simics calls this function SimicsDriver::makeRequest() and this function filters out all unsupported operations(ie i/o , DMA,cache flush, prefetch)via SimicsDriver::isUnhandledTransaction(). so this way DMA/ io operations are not passed to Ruby and not cached in any caches. you need to
make some changes to this function SimicsDriver::isUnhandledTransaction(). whenever memory is accessed by DMA or I/O device this IS_DEV_MEM_OP(mem_trans->s.ini_type) returns true and you can use 'mem_trans' arg to do some profiling Hope it helps Regards, Muhammad abid From: Sitos Lin <sitos.lin@xxxxxxxxx> To: Gems Users <gems-users@xxxxxxxxxxx> Sent: Tuesday, December 29, 2009 16:02:38 Subject: Re: [Gems-users] Ruby for x86 machine Hi: I found that for both sparc and x86 machine, ruby is attached to phys_mem0 (x86) or phys_mem (sparc). If the phys_mem0 (or phys_mem) represnets the physical memory. Why I can get the memory requests from device in Sparc/Ruby, but only get the memory requests from processor in x86/Ruby? Does some objects filter the requests from device in x86 machine, so that them can not reach phys_mem0? Thank you. Best regards, Sitos 2009/12/29 Muhammad abid Mughal <mabidm_pieas@xxxxxxxxx>: > Hi, > You dont need to attach Ruby to physical memory, its already attached.In > Simics , Every physical memory object (of class ram) has associated > memory-space(class of simics) object.. To see if ruby attached ,Type > following commands on simics CLI > Ultrsparc processor specific, Give them a try > list-objects display all objects in the system . try to find obj like > "phys_mem0" then type > phys_memo.map Display which ram object(s) this memory space is attached > @conf.phys_mem0.timing_model If ruby attached then display ruby > @conf.cpu0.physical_memory Display name of memory-space to which this > processor attached > > To see how Ruby attached to timing_model of memory-space > see init_local in ruby.c file > > Regards, > Muhammad abid > ________________________________ > From: Sitos Lin <sitos.lin@xxxxxxxxx> > To: Gems Users <gems-users@xxxxxxxxxxx> > Sent: Tuesday, December 29, 2009 12:37:08 > Subject: Re: [Gems-users] Ruby for x86 machine > > Hello: > I attach Ruby to the x86 machine by following the same instructions > from the quick start: > > instruction-fetch-mode instruction-fetch-trace > istc-disable > dstc-disable > cpu-switch-time 1 > load-module ruby > ruby0.setparam g_NUM_PROCESSORS 1 > ruby0.setparam g_MEMORY_SIZE_BYTES 4294967296 > ruby0.init > > There is no instruction indicating which physical memory objects > ruby attach to. How can I attach ruby to a specific memory object? > Thank you. > > Best regards, > Sitos > > 2009/12/28 Dan Gibson <degibson@xxxxxxxx>: >> Sitos, >> Make sure you have attached Ruby to all physical memory objects. The >> serengeti target in Simics has only one, but as I recall, the x86 target >> has >> many physical memory spaces. >> >> Regards, >> Dan >> >> On Mon, Dec 28, 2009 at 4:03 AM, Sitos Lin <sitos.lin@xxxxxxxxx> wrote: >>> >>> Hello: >>> I have modified several files in Ruby to capture the memory access >>> from device (DMA operations). It works well with Sparc machine. I can >>> see the memory requests both from processor and device. However, when >>> I load Ruby module to a x86 machine, there are only requests from >>> processor without the requests from device. Do x86 machine need >>> additional modifications? Thanks. >>> Best regards, >>> Sitos >>> _______________________________________________ >>> Gems-users mailing list >>> Gems-users@xxxxxxxxxxx >>> https://lists.cs.wisc.edu/mailman/listinfo/gems-users >>> Use Google to search the GEMS Users mailing list by adding >>> "site:https://lists.cs.wisc.edu/archive/gems-users/" to your search. >>> >> >> >> >> -- >> http://www.cs.wisc.edu/~gibson [esc]:wq! >> >> _______________________________________________ >> Gems-users mailing list >> Gems-users@xxxxxxxxxxx >> https://lists.cs.wisc.edu/mailman/listinfo/gems-users >> Use Google to search the GEMS Users mailing list by adding >> "site:https://lists.cs.wisc.edu/archive/gems-users/" to your search. >> >> >> > _______________________________________________ > Gems-users mailing list > Gems-users@xxxxxxxxxxx > https://lists.cs.wisc.edu/mailman/listinfo/gems-users > Use Google to search the GEMS Users mailing list by adding > "site:https://lists.cs.wisc.edu/archive/gems-users/" to your search. > > > ________________________________ > Get your preferred Email name! > Now you can @ymail.com and @rocketmail.com. > _______________________________________________ > Gems-users mailing list > Gems-users@xxxxxxxxxxx > https://lists.cs.wisc.edu/mailman/listinfo/gems-users > Use Google to search the GEMS Users mailing list by adding > "site:https://lists.cs.wisc.edu/archive/gems-users/" to your search. > > > _______________________________________________ Gems-users mailing list Gems-users@xxxxxxxxxxx https://lists.cs.wisc.edu/mailman/listinfo/gems-users Use Google to search the GEMS Users mailing list by adding "site:https://lists.cs.wisc.edu/archive/gems-users/" to your search. Get your new Email address! Grab the Email name you've always wanted before someone else does! |
[← Prev in Thread] | Current Thread | [Next in Thread→] |
---|---|---|
|
Previous by Date: | Re: [Gems-users] Ruby for x86 machine, Sitos Lin |
---|---|
Next by Date: | Re: [Gems-users] Ruby for x86 machine, Sitos Lin |
Previous by Thread: | Re: [Gems-users] Ruby for x86 machine, Sitos Lin |
Next by Thread: | Re: [Gems-users] Ruby for x86 machine, Sitos Lin |
Indexes: | [Date] [Thread] |