Abhishek, why you want to run Atomic CPU with cache?

On 11 Aug 2011, at 02:44, Abhishek Rawat wrote:

> Hi Iordan,
> 
> Here is the patch for checkpointing caches. I was working on the current 
> stable revision 8337:b9ba22cb23f2. This works for Simple Atomic CPU. 
> 
> -Abhishek
> On Wed, Aug 10, 2011 at 9:43 AM, Ali Saidi <[email protected]> wrote:
> I can think of very few reasons why you would want to have caches in a 
> checkpoint. You can add them when you restore from the checkpoint. 
> 
> Ali
> 
> Sent from my ARM powered device
> 
> On Aug 10, 2011, at 2:56 AM, Iordan Alexandru <[email protected]> wrote:
> 
>> Hello
>> 
>> Thank you for your reply.
>> 
>> Is there no way to get a valid checkpoint in a simulation with caches 
>> enabled? Is there nothing that I can do (hack)?
>> 
>> Alexandru
>> 
>> From: Ali Saidi <[email protected]>
>> To: Iordan Alexandru <[email protected]>; gem5 users mailing list 
>> <[email protected]>
>> Sent: Tuesday, August 9, 2011 9:31 PM
>> Subject: Re: [gem5-users] About checkpointing
>> 
>> You can't checkpoint the simulation with caches enabled. Any dirty state in 
>> the caches isn't saved in the checkpoint.
>>  
>> Ali
>>  
>>  
>> On Tue, 9 Aug 2011 03:29:47 -0700 (PDT), Iordan Alexandru <[email protected]> 
>> wrote:
>>> Hello
>>> I have been having problems using the checkpoint feature in GEM5. I tried 
>>> to run a very simple scenario:
>>> 1. I launched the simulator with the command:
>>> ./build/ALPHA_FS/gem5.opt --outdir=test/ configs/example/fs.py -n 2 
>>> --caches --l2cache
>>> 2. using m5term I created a checkpoint (witch was created with no errors) 
>>> and then I exited the simulation
>>> 3. I tried to restore using the checkpoint:
>>> ./build/ALPHA_FS/gem5.opt --outdir=test/ configs/example/fs.py -n 2 
>>> --caches --l2cache -r 1
>>> The message that I got in m5term is the following:
>>> ==== m5 slave terminal: Terminal 0 ====
>>> Unable to handle kernel paging request at virtual address 000000011fd2dd40
>>> Fixing recursive fault but reboot is needed!
>>> Unable to handle kernel paging request at virtual address 0000000000000004
>>> CPU 0 mount(761): Oops 0
>>> pc = []  ra = []  ps = 0000    Not tainted
>>> pc is at do_exit+0xf4/0x950
>>> ra is at do_exit+0x80/0x950
>>> v0 = 0000000000000007  t0 = 0000000000000004  t1 = fffffc001f4a96d0
>>> t2 = fffffc000085eca0  t3 = 0000000000000000  t4 = fffffc00008191c0
>>> t5 = 0000000000000ad7  t6 = 0000000000000031  t7 = fffffc001f354000
>>> s0 = 0000000000000009  s1 = fffffc001f4a9500  s2 = 0000000000000000
>>> s3 = 0000000000000000  s4 = 0000000000000000  s5 = 000000011fd2dd40
>>> s6 = 0000000000000000
>>> a0 = fffffc001f4a9500  a1 = fffffc000083c108  a2 = ffffffffffffffff
>>> a3 = 0000000000000000  a4 = 0000000000000008  a5 = 0000000000000009
>>> t8 = 0000000000000000  t9 = fffffc00006c9534  t10= 0000000000007fff
>>> t11= 00000000000003ff  pv = fffffc000034f030  at = 0000000000000000
>>> gp = fffffc000085bf40  sp = fffffc001f357da0
>>> Trace:
>>> [] do_page_fault+0x3c0/0x4a0
>>> [] do_page_fault+0x3ac/0x4a0
>>> [] entMM+0x9c/0xc0
>>> [] do_group_exit+0x54/0x100
>>> 
>>> Code: 402203a1  e4200001  b44400b0  a42a0358  20210004  60004000 40603122 
>>> Fixing recursive fault but reboot is needed!
>>> Unable to handle kernel paging request at virtual address 0000000000000004
>>> CPU 0 mount(761): Oops 0
>>> pc = []  ra = []  ps = 0000    Tainted: G      D  
>>> pc is at do_exit+0xf4/0x950
>>> ra is at do_exit+0x80/0x950
>>> v0 = 0000000000000007  t0 = 0000000000000004  t1 = fffffc001f4a96d0
>>> t2 = fffffc000085eca0  t3 = 0000000000000000  t4 = fffffc00008191c0
>>> t5 = 0000000000000fed  t6 = 0000000000000031  t7 = fffffc001f354000
>>> s0 = 000000000000000b  s1 = fffffc001f4a9500  s2 = 0000000000000000
>>> s3 = fffffc001f357c38  s4 = 0000000000000000  s5 = 0000000000000004
>>> s6 = 0000000000000000
>>> a0 = fffffc001f4a9500  a1 = fffffc000083c108  a2 = ffffffffffffffff
>>> a3 = 0000000000000000  a4 = 0000000000000008  a5 = 0000000000000008
>>> t8 = 0000000000000000  t9 = fffffc00006c9534  t10= 0000000000007fff
>>> t11= 00000000000003ff  pv = fffffc000034f030  at = 0000000000000000
>>> gp = fffffc000085bf40  sp = fffffc001f357b10
>>> Trace:
>>> [] die_if_kernel+0x12c/0x130
>>> [] die_if_kernel+0xd4/0x130
>>> [] do_page_fault+0x3ac/0x4a0
>>> [] entMM+0x9c/0xc0
>>> [] release_console_sem+0x20c/0x310
>>> [] release_console_sem+0x2b4/0x310
>>> [] vprintk+0x224/0x530
>>> [] vprintk+0x224/0x530
>>> [] do_exit+0x80/0x950
>>> [] exit_signals+0x0/0x190
>>> [] do_exit+0xf4/0x950
>>> [] do_page_fault+0x3c0/0x4a0
>>> [] do_page_fault+0x3ac/0x4a0
>>> [] entMM+0x9c/0xc0
>>> [] do_group_exit+0x54/0x100
>>> 
>>> Code: 402203a1  e4200001  b44400b0  a42a0358  20210004  60004000 40603122 
>>> Did I did something wrong here? Do I need to add something in the 
>>> configuration file before I can use the checkpoint feature?
>>> Thank you in advance!
>>> Alexandru
>>> 
>>> die_if_kernel recursion detected.
>>  
>> 
>> 
> 
> _______________________________________________
> gem5-users mailing list
> [email protected]
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
> 
> 
> 
> -- 
> -Abhishek
>  
> Graduate Student
> Computer Science
> University of Virginia
>  
> ---------------------------------------------------------------------------------------------------------------------
> simplicity is the ultimate sophistication
> -Leonardo da Vinci
> 
> <checkpointing_caches.patch>_______________________________________________
> gem5-users mailing list
> [email protected]
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to