Thank you Andreas, for the objective and complete answer. Best, Matheus
> Em 03/01/2015, às 12:52, Andreas Hansson <[email protected]> escreveu: > > Hi Matheus, > > ARM full-system simulation is actively used by a large number of people, > and is well supported. At the moment you can use up to 8 cores. > > Currently Ruby has some assumptions that prevents it from being used with > ARM full-system simulation, so if that is what you are after there is some > work to be done. That said, the gem5 memory system has the Cache, > CoherentXBar, NoncoherentXBar, Bridge and DRAMCtrl components that you can > use to build elaborate (and representative) on-chip memory systems. The > flexibility of the components allow you to build many flavours of NUCA, > NUMA systems, with striping/interleaving, snoop filtering, multi-hop > crossbars etc. I would think this is enough for most use-cases. > > > Andreas > > On 03/01/2015 00:04, "Matheus Alcântara Souza via gem5-users" > <[email protected]> wrote: > >> Dear all, >> >> First, I wish you success and fortune in 2015. >> >> Reading C. Dirik question, I would ask if it is possible to simulate NoC >> using ARM ISA and a FullSystem simulation. >> >> Maybe using Garnet, and up to how many cores? >> >> Thank you in advance! >> Matheus Alcântara Souza >> >>> Em 02/01/2015, às 20:26, Cagdas Dirik (cdirik) via gem5-users >>> <[email protected]> escreveu: >>> >>> Thank you for the recommendation Andreas :) >>> >>> We (my team) will be looking at ARM full system pretty soon. For the >>> time being though, I am working to get our X86 systems up and running. >>> >>> As a reference to others working on X86, I have resolved my issue. It >>> was due to my inexperience with linux kernel development. I was using >>> $ make vmlinux >>> command and was trying to boot the simulator with >>> linux-x.y.z/arch/x86/boot/compressed/vmlinux file. Apparently this files >>> does not contain boot information - hence simulator would stuck at the >>> very beginning. >>> If instead I just use >>> $ make >>> and boot the simulator using linux-x.y.z/vmlinux file, everything >>> continues as expected. >>> >>> Cagdas >>> >>> On Dec 20, 2014, at 8:59 AM, Andreas Hansson >>> <[email protected]<mailto:[email protected]>> wrote: >>> >>> Hi Cagdas, >>> >>> Merely a reflection on my side...I get the impression there is not many >>> gem5 users out there doing X86 full system (based on the mailing list >>> activity). With the risk of sounding a bit biased, the ARM full system >>> support is far more tested and, I would argue, stable. ARM full system >>> works with the latest and greatest in terms of Linux kernels, and also >>> supports features like DVFS >>> (http://www.gem5.org/Running_gem5#Experimenting_with_DVFS). I realise it >>> might not fit with your use-case, but just in case. >>> >>> Andreas >>> >>> From: "Cagdas Dirik via gem5-users (cdirik)" >>> <[email protected]<mailto:[email protected]>> >>> Reply-To: "Cagdas Dirik (cdirik)" >>> <[email protected]<mailto:[email protected]>>, gem5 users mailing list >>> <[email protected]<mailto:[email protected]>> >>> Date: Saturday, 20 December 2014 00:54 >>> To: gem5 users mailing list >>> <[email protected]<mailto:[email protected]>> >>> Subject: [gem5-users] building kernel for X86 - gem5 hangs at the very >>> beginning with new kernel >>> >>> Hi, >>> >>> I am trying to build my own kernel, boot my own disk image, and run X86 >>> in FS mode . However I am running into issues with fresh built kernel >>> because gem5 hangs at the very beginning, nothing happens. >>> I can boot my debian image on qemu. I can also boot this image using >>> out-of-box 2.6.22.9 kernel (although udev fails since it requires >>> version 2.6.26) >>> But I cannot boot this image using fresh built kernel. I tried both dev >>> branch and stable branch. I also tried 2.6.26, 2.6.31 versions. All hang >>> in the same way. I don’t suspect anything different on kernel config >>> (especially with CPU type). >>> >>> I will follow guidelines in debugging page, and do some trace based >>> debugging. But in the meantime, if someone can give me a hint I will >>> greatly appreciate it. Are there any tool dependencies on building >>> kernels for gem5? Are there any other small details others experienced >>> that I am missing? Do others run into issues building their own kernel >>> for gem5? >>> >>> One interesting thing is that when I compare my kernel vs. out-of-box >>> kernel, entry point addresses looks suspiciously different (0x200 vs. >>> 0x200000 on out-of-box kernel). That may result in jumping to an >>> unexpected address and result in system hang. Does anyone have any ideas >>> why these addresses differ significantly? Or would that be an issue? >>> >>> Below are details and my command lines for reference. >>> >>> Thanks in advance! >>> >>> Cagdas >>> >>> I downloaded kernel 2.6.28.4 (since x86 full system downloads come with >>> 2.6.28.4 config). My steps building the kernel (nothing out of ordinary): >>> >>> $ wget >>> https://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.4.tar.bz2 >>> $ tar xjvf linux-2.6.28.4.tar.bz2 >>> $ cp $M5_PATH/configs/linux-2.6.28.4 linux-2.6.28.4/.config >>> $ cd linux-2.6.28.4 >>> $ make oldconfig >>> $ make -j 32 >>> $ make vmlinux -j 32 >>> >>> My gcc is 4.1.2 >>> >>> $ gcc --version >>> gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-54) >>> Copyright (C) 2006 Free Software Foundation, Inc. >>> This is free software; see the source for copying conditions. There is >>> NO >>> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR >>> PURPOSE. >>> >>> If I boot this image using out-of-box kernel, gem5 boots fine (although >>> udev fails with version being older than 2.6.26): >>> >>> $ build/X86/gem5.opt configs/example/fs.py >>> --disk-image=debian-amd64.img --kernel=x86_64-vmlinux-2.6.22.9.smp >>> --cpu-type=atomic --mem-type=simple_mem >>> >>> If I instead use custom built 2.6.28.4 kernel, gem5 hangs at the very >>> beginning. Nothing happens in the system. >>> >>> $ build/X86/gem5.opt configs/example/fs.py >>> --disk-image=debian-amd64.img --kernel=vmlinux-2.6.28.4 >>> --cpu-type=atomic --mem-type=simple_mem >>> gem5 Simulator System. http://gem5.org<http://gem5.org/> >>> gem5 is copyrighted software; use the --copyright option for details. >>> >>> gem5 compiled Dec 19 2014 13:56:08 >>> gem5 started Dec 19 2014 14:50:06 >>> gem5 executing on rndarch17 >>> command line: build/X86/gem5.opt configs/example/fs.py >>> --disk-image=debian-amd64.img --kernel=vmlinux-2.6.28.4 >>> --cpu-type=atomic --mem-type=simple_mem >>> Global frequency set at 1000000000000 ticks per second >>> info: kernel located at: >>> /proj/adg/REV/sim/cdirik/gem5-sims/ya-dist/m5/system/binaries/vmlinux-2.6 >>> .28.4 >>> Listening for com_1 connection on port 3456 >>> 0: rtc: Real-time clock set to Sun Jan 1 00:00:00 2012 >>> 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000 >>> warn: Reading current count from inactive timer. >>> **** REAL SIMULATION **** >>> info: Entering event queue @ 0. Starting simulation... >>> 5951693500: system.pc.com<http://system.pc.com/>_1.terminal: attach >>> terminal 0 >>> >>> $ telnet 127.0.0.1 3456 >>> Trying 127.0.0.1... >>> Connected to localhost.localdomain (127.0.0.1). >>> Escape character is '^]'. >>> ==== m5 slave terminal: Terminal 0 ==== >>> >>> Here are the readelf outputs for two kernels for comparison: >>> >>> $ readelf -h $M5_PATH/binaries/x86_64-vmlinux-2.6.22.9.smp >>> ELF Header: >>> Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 >>> Class: ELF64 >>> Data: 2's complement, little endian >>> Version: 1 (current) >>> OS/ABI: UNIX - System V >>> ABI Version: 0 >>> Type: EXEC (Executable file) >>> Machine: Advanced Micro Devices X86-64 >>> Version: 0x1 >>> Entry point address: 0x200000 >>> Start of program headers: 64 (bytes into file) >>> Start of section headers: 54040168 (bytes into file) >>> Flags: 0x0 >>> Size of this header: 64 (bytes) >>> Size of program headers: 56 (bytes) >>> Number of program headers: 5 >>> Size of section headers: 64 (bytes) >>> Number of section headers: 49 >>> Section header string table index: 46 >>> >>> $ readelf -h $M5_PATH/binaries/vmlinux-2.6.28.4 >>> ELF Header: >>> Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 >>> Class: ELF64 >>> Data: 2's complement, little endian >>> Version: 1 (current) >>> OS/ABI: UNIX - System V >>> ABI Version: 0 >>> Type: EXEC (Executable file) >>> Machine: Advanced Micro Devices X86-64 >>> Version: 0x1 >>> Entry point address: 0x200 >>> Start of program headers: 64 (bytes into file) >>> Start of section headers: 5037024 (bytes into file) >>> Flags: 0x0 >>> Size of this header: 64 (bytes) >>> Size of program headers: 56 (bytes) >>> Number of program headers: 2 >>> Size of section headers: 64 (bytes) >>> Number of section headers: 12 >>> Section header string table index: 9 >>> >>> >>> -- IMPORTANT NOTICE: The contents of this email and any attachments are >>> confidential and may also be privileged. If you are not the intended >>> recipient, please notify the sender immediately and do not disclose the >>> contents to any other person, use it for any purpose, or store or copy >>> the information in any medium. Thank you. >>> >>> ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, >>> Registered in England & Wales, Company No: 2557590 >>> ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 >>> 9NJ, Registered in England & Wales, Company No: 2548782 >>> >>> _______________________________________________ >>> 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 > > > -- IMPORTANT NOTICE: The contents of this email and any attachments are > confidential and may also be privileged. If you are not the intended > recipient, please notify the sender immediately and do not disclose the > contents to any other person, use it for any purpose, or store or copy the > information in any medium. Thank you. > > ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, > Registered in England & Wales, Company No: 2557590 > ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, > Registered in England & Wales, Company No: 2548782 _______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
