Something that I forgot to mention is what is the blackscholes ? Where did you attach the disk?
The process about needing Solaris 10 that I explained before is when you are booting Solaris 10. So, if you want to go with Solaris 10 then you will need to take a disk image of the hard disk where Solaris10 is installed (you place the files also there so you don't need to take other image). Then, you use this disk image as the one that is attached to the simulated machine that you will need to boot. Regards, -Stavros ________________________________________ From: Volos Stavros [[email protected]] Sent: Thursday, June 03, 2010 9:58 AM To: Mahmood Naderan Cc: simflex Subject: Re: Creating a craff file for wokloads Hi Mahmood, Regarding the threads you should take a look in the WhiteBox component. If you look what WhiteBox does is that it assigns the address of the cpu_list (struct cpu of open solaris). You may use kdb (kernel debugger) to find what is the address. Next it adds some fixed value to go to the next cpu. You may see the cpu next point in open solaris to calculate that offset and finally you need an offset for the thread id. Instead of 0x10 that it was valid for Solaris 8 now it's something different. You can calculate again that offset from cpu struct of opensolaris. Regarding the user/kernel space. What flexus does is that it looks the 29th bit if it's zero or not. However this is not true for Solaris 10. The best to do is to use the value of the bit Priv at PSTATE register of sparc and make the necessary changes in the flexus code so it takes this value. Regarding the network you need to plumb up and assign an IP to your simulated machine ethernet device and then simply use the connect-real-network. If hme0 is your ethernet device you may do the following # ifconfig hme0 plumb # ifconfig hme0 down # ifconfig hme0 10.10.0.50 netmask 255.255.255.0 up > connect-real-network 10.10.0.50 The +++ of using Solaris 10 is that multithreaded binaries are all the same regardless the number of cpus of the machine where you are compiling. For example if you compile in a 2-cpu sparc real machine then it will be ok when you simulate 16 cpus in Simics. However you have to remember two things. Flexus supports sun4u platform and Ultrasparc III architecture. Make sure that your machine fulfills these requirements otherwise you will not be able to simulate in flexus. Regards, -Stavros On Jun 3, 2010, at 8:50 AM, Mahmood Naderan wrote: >The current version of flexus have some hardcoded parts that are compatible >with Solaris 8 e.g. the thread translation in Whitebox and the kernel/user >space. Where they are? can you explain more? >In the simulated machine you can set up a network and connect it to a real >network. I had setup a network before. I will try again but I want to know where should I connect? >I suppose that the sd1 is the new disk, because sd0 is the disk of the >original chassis. I created a craff file for that image, but I can not mount it. I am trying to rsolve the issue. What I want to know is how "flexus-test-app-disk_v9.craff" has been created (step by step). // Naderan *Mahmood; ________________________________ From: Volos Stavros <[email protected]<mailto:[email protected]>> To: Mahmood Naderan <[email protected]<mailto:[email protected]>>; simflex <[email protected]<mailto:[email protected]>> Sent: Wed, June 2, 2010 5:12:58 PM Subject: RE: Creating a craff file for wokloads The current version of flexus have some hardcoded parts that are compatible with Solaris 8 e.g. the thread translation in Whitebox and the kernel/user space. In the simulated machine you can set up a network and connect it to a real network. I suppose that the sd1 is the new disk, because sd0 is the disk of the original chassis. Did you mount the disk? -Stavros ________________________________________ From: Mahmood Naderan [[email protected]<mailto:[email protected]>] Sent: Wednesday, June 02, 2010 2:22 PM To: simflex Subject: Re: Creating a craff file for wokloads > In which operating system and machine did you compile them Solaris 10, serengeti > If you want to use OoO in flexus, you will need sparc/solaris8 binaries It is better to start with a simple example: One core OoO. You mean I have to use solaris8? > Are these files very big? If not, it may be better to upload them with > setting up a network. No they are not big. It is Blackscholes with 4K input. Where should I upload? >So, if you want to simulate OoO in flexus you will need to compile those files >in >simics enviroment and then take a checkpoint while running them. Then you >can use this checkpoint as the phase_000 This is what I want to know. I have attached a new disk (/disk) to the original chassis (so the chassis have 2 disks) and put the files there. Now when I create a checkpoint, I see these files: blackscholes.check blackscholes.check.memory_image blackscholes.check.raw blackscholes.check.sd0_image blackscholes.check.sd1_image At this point I want to know which one is the second disk and contains my workload? // Naderan *Mahmood; ________________________________ From: Volos Stavros <[email protected]<mailto:[email protected]>> To: Mahmood Naderan <[email protected]<mailto:[email protected]>>; simflex <[email protected]<mailto:[email protected]>> Sent: Wed, June 2, 2010 4:19:30 PM Subject: RE: Creating a craff file for wokloads Hi Mahmood, The craff file is a compressed format of a raw image. You can use the craff tool to compress a raw file to craff. So, you need to create a raw image file containing the data that you want. You may read Chapter 7 of Simics User Guide for Unix for more details about craff tool and images in Simics. But let me ask you some questions that are very important. In which operating system and machine did you compile them and what kind of simulation do you want to do with these workloads? If you want to use OoO in flexus, you will need sparc/solaris8 binaries. If you want to simulate 16 OoO cores you will need to compile these files in 16-core machine i.e. in simics where you are simualting 16 sparc cpus running Solaris 8. Are these files very big? If not, it may be better to upload them with setting up a network. So, if you want to simulate OoO in flexus you will need to compile those files in simics enviroment and then take a checkpoint while running them. Then you can use this checkpoint as the phase_000. Regards, -Stavros ________________________________________ From: Mahmood Naderan [[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>] Sent: Wednesday, June 02, 2010 12:55 PM To: simflex Subject: Creating a craff file for wokloads Hi all, I want to know the procedure (that flexus developers did) to create a craff file that contains the workload. Like the image processing example, I want to save the binaries of my workloads to a craff file and attach it to the chassis. // Naderan *Mahmood;
