[gem5-users] Booting hypervisor
Does anyone know whether gem5 support booting hypervisor? For example, Xen. And how to boot it? I find there is a little code about hypervisor in gem5, but I don't know how to use it. Thanks. Best, Xiaolong ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
Re: [gem5-users] How to associate a kernel offset to a linux image for full system simulation?
Did you try to set the kernel command line option as the kernel suggested? root=/dev/hda2 root=/dev/sda2 Picking 2 as it is the larger partition. I recommend always giving the full gem5 command line when posting here. On Mon, Jul 30, 2018 at 4:00 PM, Kleovoulos Kalaitzidis < kleovoulos.kalaitzi...@inria.fr> wrote: > I am trying to setup Gem5 for full system simulation on x86. Following > Jason's tutorial, I have generated the image file for ubuntu 18.04. > Then for the kernel I did the following steps (with Jason's config): > make oldconfig > make vmlinux > > This creates an executable called vmlinux which I use as the kernel for > fs.py. After trying to run it and creating the telnet session, I get the > following errors (extracted the end of the messages): > > Using kernel 4.8.13: > List of all partitions: > 0100 16384 ram0 (driver?) > 0101 16384 ram1 (driver?) > 0102 16384 ram2 (driver?) > 0103 16384 ram3 (driver?) > 0104 16384 ram4 (driver?) > 0105 16384 ram5 (driver?) > 0106 16384 ram6 (driver?) > 0107 16384 ram7 (driver?) > 0108 16384 ram8 (driver?) > 0109 16384 ram9 (driver?) > 010a 16384 ram10 (driver?) > 010b 16384 ram11 (driver?) > 010c 16384 ram12 (driver?) > 010d 16384 ram13 (driver?) > 010e 16384 ram14 (driver?) > 010f 16384 ram15 (driver?) > 0300 8192000 hda driver: ide-gd > 03011024 hda1 b3e8ba38-c801-461b-a765- > d4ccb929b5df > 0302 8188928 hda2 > b68ea151-df09-44cf-8b99-0875407a5b25 > No filesystem could mount root, tried: ext3 ext4 ext2 fuseblk > Kernel panic - not syncing: VFS: Unable to mount root fs on > unknown-block(3,1) > CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.8.13 #1 > Hardware name: , BIOS 06/08/2008 > 0001 811e0a97 88001e5bc000 816ea24b > 810ae1b3 8810 88001ec57ec0 88001ec57e58 > 88001ec57eb0 88001ec57ec8 0012 > Call Trace: > [] ? dump_stack+0x5d/0x79 > [] ? panic+0xd3/0x20b > [] ? mount_block_root+0x2a4/0x2bb > [] ? prepare_namespace+0x161/0x197 > [] ? kernel_init_freeable+0x182/0x18b > [] ? kernel_init+0x5/0xe6 > [] ? ret_from_fork+0x1f/0x40 > [] ? rest_init+0x69/0x69 > Kernel Offset: disabled > ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on > unknown-block(3,1) > > Using Kernel 4.17.9: > [0.413939] VFS: Cannot open root device "hda1" or unknown-block(0,0): > error -6 > [0.413951] Please append a correct "root=" boot option; here are the > available partitions: > [0.413966] 0800 8192000 sda > [0.413967] driver: sd > [0.413982] 08011024 sda1 > b3e8ba38-c801-461b-a765-d4ccb929b5df > [0.413983] > [0.414000] 0802 8188928 sda2 > b68ea151-df09-44cf-8b99-0875407a5b25 > [0.414001] > [0.414018] Kernel panic - not syncing: VFS: Unable to mount root fs on > unknown-block(0,0) > > The problem seems to be during the creation of the kernel, where I do not > install any driver. Jason mentions that I should probably need to install > some drivers/software, but they are not specified. > From what I've seen on the internet it is likely to be a filesystem driver > missing or an incompatibility of kernel and linux version. > > Would anyone be able to give directions on how to understand and solve > this issue? > > > -- > Kleovoulos Kalaitzidis > Doctorant - Équipe PACAP > > Centre de recherche INRIA Rennes - Bretagne Atlantique > Bâtiment 12E, Bureau E321, Campus de Beaulieu, > 35042 Rennes Cedex, France > > ___ > gem5-users mailing list > gem5-users@gem5.org > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users > ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
Re: [gem5-users] GEM5 TLM example--No gem5.sc generated
Hi Christian, Yes I followed all the build steps in section III and found no issue when building. The commands I ran are: > cd ../.. > scons build/ARM/gem5.opt > scons --with-cxx-config --without-python --without-tcmalloc > build/ARM/libgem5_opt.so > cd util/tlm > ../../build/ARM/gem5.opt conf/tlm_slave.py After the last step, config file (config.ini in m5out/ directory) is generated, but binary gem5.sc is NOT generated. According to README, "The build step creates a binary 'gem5.sc' for each example in the build/examples/{master|slave}_port directories. It can now be used to load in the generated configuration file from the previous normal gem5 run." I can not find gem5.sc in directory mentioned above. If everything works well, will the last build command generate gem5.sc binary? Thanks! Regards, Eric On 7/30/18, 11:17 PM, "gem5-users on behalf of Christian Menard" wrote: EXTERNAL MAIL Hi Eric, for running the tlm example you need two things: 1. the binary (gem5.sc) 2. a configuration file (config.ini) The command you posted (see below) produces the configuration, not the binary. >> ../../build/ARM/gem5.opt conf/tlm_slave.py Did you follow the build steps (section III in the Readme)? This should give you some binaries in the build directory. If you did this already, could you be more specific about what is not working? Do you get eny error messages? Cheers, Christian Eric Zhou writes: > Hello experts, > > I am new to GEM5 and I am trying to run the examples in util/tlm directory, but I ran into some issue. I read the README file in this directory and followed every steps. The issue is that no “gem5.sc” file is created after I execute the command below. > >> ../../build/ARM/gem5.opt conf/tlm_slave.py > > gem5 Simulator System. https://urldefense.proofpoint.com/v2/url?u=http-3A__gem5.org&d=DwIGaQ&c=aUq983L2pue2FqKFoP6PGHMJQyoJ7kl3s3GZ-_haXqY&r=QA0wyVDBz_aNTupsPs_JK-YsqyieXKUdBvCtl6Ixz8o&m=O7vmtLYnoPRrYshvfH7tieW1S7VBb2lWuSCV38HU5zg&s=pCbpKbeWrBCObQLRleiHEtnOuoeVtg4j9rpKFXdOHMM&e= > gem5 is copyrighted software; use the --copyright option for details. > > gem5 compiled Jul 29 2018 23:57:21 > gem5 started Jul 30 2018 03:01:34 > gem5 executing on hsv-bw01, pid 313321 > command line: ../../build/ARM/gem5.opt --verbose conf/tlm_slave.py > > Global frequency set at 1 ticks per second > fatal: Can't find port handler type 'tlm_slave' > Memory Usage: 375432 Kbytes > > It seems that it is working but NO ‘gem5.sc’ is created as described in README. > > The message "fatal: Can't find port handler type 'tlm_{master,slave}'" is okay. > The configuration will be stored in the m5out/ directory > > The build step creates a binary 'gem5.sc' for each example in the > build/examples/{master|slave}_port directories. It can now be used to load in > the generated configuration file from the previous normal gem5 run. > > I tried the example in util/systemc directory and I can get a gem5.opt.sc binary over there. It does not work for example in util/tlm. Does anyone know what I missed, thanks a lot! > > Regards, > Eric > ___ > gem5-users mailing list > gem5-users@gem5.org > https://urldefense.proofpoint.com/v2/url?u=http-3A__m5sim.org_cgi-2Dbin_mailman_listinfo_gem5-2Dusers&d=DwIGaQ&c=aUq983L2pue2FqKFoP6PGHMJQyoJ7kl3s3GZ-_haXqY&r=QA0wyVDBz_aNTupsPs_JK-YsqyieXKUdBvCtl6Ixz8o&m=O7vmtLYnoPRrYshvfH7tieW1S7VBb2lWuSCV38HU5zg&s=i1M72d6izP4qTzBeOusgMF6wI2q8qKRfKBZ8kd_8fDM&e= ___ gem5-users mailing list gem5-users@gem5.org https://urldefense.proofpoint.com/v2/url?u=http-3A__m5sim.org_cgi-2Dbin_mailman_listinfo_gem5-2Dusers&d=DwIGaQ&c=aUq983L2pue2FqKFoP6PGHMJQyoJ7kl3s3GZ-_haXqY&r=QA0wyVDBz_aNTupsPs_JK-YsqyieXKUdBvCtl6Ixz8o&m=O7vmtLYnoPRrYshvfH7tieW1S7VBb2lWuSCV38HU5zg&s=i1M72d6izP4qTzBeOusgMF6wI2q8qKRfKBZ8kd_8fDM&e= ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
Re: [gem5-users] GEM5 TLM example--No gem5.sc generated
Hi Eric, for running the tlm example you need two things: 1. the binary (gem5.sc) 2. a configuration file (config.ini) The command you posted (see below) produces the configuration, not the binary. >> ../../build/ARM/gem5.opt conf/tlm_slave.py Did you follow the build steps (section III in the Readme)? This should give you some binaries in the build directory. If you did this already, could you be more specific about what is not working? Do you get eny error messages? Cheers, Christian Eric Zhou writes: > Hello experts, > > I am new to GEM5 and I am trying to run the examples in util/tlm directory, > but I ran into some issue. I read the README file in this directory and > followed every steps. The issue is that no “gem5.sc” file is created after I > execute the command below. > >> ../../build/ARM/gem5.opt conf/tlm_slave.py > > gem5 Simulator System. http://gem5.org > gem5 is copyrighted software; use the --copyright option for details. > > gem5 compiled Jul 29 2018 23:57:21 > gem5 started Jul 30 2018 03:01:34 > gem5 executing on hsv-bw01, pid 313321 > command line: ../../build/ARM/gem5.opt --verbose conf/tlm_slave.py > > Global frequency set at 1 ticks per second > fatal: Can't find port handler type 'tlm_slave' > Memory Usage: 375432 Kbytes > > It seems that it is working but NO ‘gem5.sc’ is created as described in > README. > > The message "fatal: Can't find port handler type 'tlm_{master,slave}'" is > okay. > The configuration will be stored in the m5out/ directory > > The build step creates a binary 'gem5.sc' for each example in the > build/examples/{master|slave}_port directories. It can now be used to load in > the generated configuration file from the previous normal gem5 run. > > I tried the example in util/systemc directory and I can get a gem5.opt.sc > binary over there. It does not work for example in util/tlm. Does anyone know > what I missed, thanks a lot! > > Regards, > Eric > ___ > gem5-users mailing list > gem5-users@gem5.org > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
[gem5-users] How to associate a kernel offset to a linux image for full system simulation?
I am trying to setup Gem5 for full system simulation on x86. Following Jason's tutorial, I have generated the image file for ubuntu 18.04. Then for the kernel I did the following steps (with Jason's config): make oldconfig make vmlinux This creates an executable called vmlinux which I use as the kernel for fs.py. After trying to run it and creating the telnet session, I get the following errors (extracted the end of the messages): Using kernel 4.8.13: List of all partitions: [ callto:0100 16384 | 0100 16384 ] ram0 (driver?) [ callto:0101 16384 | 0101 16384 ] ram1 (driver?) [ callto:0102 16384 | 0102 16384 ] ram2 (driver?) [ callto:0103 16384 | 0103 16384 ] ram3 (driver?) [ callto:0104 16384 | 0104 16384 ] ram4 (driver?) [ callto:0105 16384 | 0105 16384 ] ram5 (driver?) [ callto:0106 16384 | 0106 16384 ] ram6 (driver?) [ callto:0107 16384 | 0107 16384 ] ram7 (driver?) [ callto:0108 16384 | 0108 16384 ] ram8 (driver?) [ callto:0109 16384 | 0109 16384 ] ram9 (driver?) 010a 16384 ram10 (driver?) 010b 16384 ram11 (driver?) 010c 16384 ram12 (driver?) 010d 16384 ram13 (driver?) 010e 16384 ram14 (driver?) 010f 16384 ram15 (driver?) [ callto:0300 8192000 | 0300 8192000 ] hda driver: ide-gd [ callto:0301 1024 | 0301 1024 ] hda1 b3e8ba38-c801-461b-a765-d4ccb929b5df [ callto:0302 8188928 | 0302 8188928 ] hda2 b68ea151-df09-44cf-8b99-0875407a5b25 No filesystem could mount root, tried: ext3 ext4 ext2 fuseblk Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(3,1) CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.8.13 #1 Hardware name: , BIOS 06/08/2008 0001 811e0a97 88001e5bc000 816ea24b 810ae1b3 8810 88001ec57ec0 88001ec57e58 88001ec57eb0 88001ec57ec8 0012 Call Trace: [] ? dump_stack+0x5d/0x79 [] ? panic+0xd3/0x20b [] ? mount_block_root+0x2a4/0x2bb [] ? prepare_namespace+0x161/0x197 [] ? kernel_init_freeable+0x182/0x18b [] ? kernel_init+0x5/0xe6 [] ? ret_from_fork+0x1f/0x40 [] ? rest_init+0x69/0x69 Kernel Offset: disabled ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(3,1) Using Kernel 4.17.9: [ 0.413939] VFS: Cannot open root device "hda1" or unknown-block(0,0): error -6 [ 0.413951] Please append a correct "root=" boot option; here are the available partitions: [ 0.413966] [ callto:0800 8192000 | 0800 8192000 ] sda [ 0.413967] driver: sd [ 0.413982] [ callto:0801 1024 | 0801 1024 ] sda1 b3e8ba38-c801-461b-a765-d4ccb929b5df [ 0.413983] [ 0.414000] [ callto:0802 8188928 | 0802 8188928 ] sda2 b68ea151-df09-44cf-8b99-0875407a5b25 [ 0.414001] [ 0.414018] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) The problem seems to be during the creation of the kernel, where I do not install any driver. Jason mentions that I should probably need to install some drivers/software, but they are not specified. >From what I've seen on the internet it is likely to be a filesystem driver >missing or an incompatibility of kernel and linux version. Would anyone be able to give directions on how to understand and solve this issue? -- Kleovoulos Kalaitzidis Doctorant - Équipe PACAP Centre de recherche INRIA Rennes - Bretagne Atlantique Bâtiment 12E, Bureau E321, Campus de Beaulieu, 35042 Rennes Cedex, France ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
[gem5-users] GEM5 TLM example--No gem5.sc generated
Hello experts, I am new to GEM5 and I am trying to run the examples in util/tlm directory, but I ran into some issue. I read the README file in this directory and followed every steps. The issue is that no “gem5.sc” file is created after I execute the command below. > ../../build/ARM/gem5.opt conf/tlm_slave.py gem5 Simulator System. http://gem5.org gem5 is copyrighted software; use the --copyright option for details. gem5 compiled Jul 29 2018 23:57:21 gem5 started Jul 30 2018 03:01:34 gem5 executing on hsv-bw01, pid 313321 command line: ../../build/ARM/gem5.opt --verbose conf/tlm_slave.py Global frequency set at 1 ticks per second fatal: Can't find port handler type 'tlm_slave' Memory Usage: 375432 Kbytes It seems that it is working but NO ‘gem5.sc’ is created as described in README. The message "fatal: Can't find port handler type 'tlm_{master,slave}'" is okay. The configuration will be stored in the m5out/ directory The build step creates a binary 'gem5.sc' for each example in the build/examples/{master|slave}_port directories. It can now be used to load in the generated configuration file from the previous normal gem5 run. I tried the example in util/systemc directory and I can get a gem5.opt.sc binary over there. It does not work for example in util/tlm. Does anyone know what I missed, thanks a lot! Regards, Eric ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
[gem5-users] Full system determinism
Hi all, I recently ran some parsec benchmarks on ARM in full-system mode, to evaluate the performance hit of a couple of scenarios using a cache with higher latencies. However, I found that in some cases, the performance increased instead of decreased (up to 20% lower execution time!), while running the exact same benchmark.I would think this is too indeterminism in full system mode, but https://www.mail-archive.com/gem5-users@gem5.org/msg12088.html suggests indeterminism should be limited to system calls only. Since parsec is commonly used as a benchmarking application, I would think there should be no indeterminism, or at least very limited? Running multiple runs of parsec and averaging the results would be too time consuming in a simulator. If anyone can comment to clear things up, that would probably help a lot of people, including me! Best regards, Timon ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users