Hi Steve thanks for the answer, In this link there is more information http://jeff.squyres.com/journal/archives/2005/10/linux_processor.html. There it explains all the problems with glibc and sched_affinity. Also there is this packet Portable Linux Processor Affinity (PLPA), that it is suppose to make work the sched_afifnity call indepently of the problmes caused by the kernel and the glibc versions.
One option is compile PLPA for alpha integrating in the m5.c file and maybe in this way it works. 2009/3/6 Steve Reinhardt <[email protected]>: > Do we know for sure what version of libc you need to get a working > sched_setaffinity? That would be a good place to start. For example, > here's a link that indicates (though not conclusively) that 2.3.6 > doesn't have it, which would make it unlikely that 2.3.5 does: > > https://www.codeblog.org/viewsrc/glibc-2.3.6/sysdeps/generic/sched_setaffinity.c > > On Fri, Mar 6, 2009 at 10:32 AM, Bob Nagel <[email protected]> wrote: >> Hello again, >> >> Sorry for keep bothering with the problem. Is there any other >> suggestion to make it work or my only option is do the gentoo thing?. >> Did anyone try this process of copy the libc files with success to >> make work the pin command?. >> >> Thanks a lot again. >> >> 2009/3/5 Bob Nagel <[email protected]>: >>> Hi Ali and Gabe thanks for the answers: >>> >>> It is still not working. I did what Ali proposed delete the libc* >>> files from the image and copy again the libc* files. And also I linked >>> statically the m5.c file. To be more concrete these are the steps I >>> did. >>> >>> For the compilation : alpha-unknown-linux-gnu-gcc-3.4.3 -o m5 m5.o >>> m5op_alpha.o --static >>> >>> Regarding the libc* files, I copied them from this directory: >>> /opt/crosstool/gcc-3.4.3-glibc-2.3.5/alpha-unknown-linux-gnu/alpha-unknown-linux-gnu/lib. >>> That I believe is the same version than the compiler. >>> >>> Also I am sure that I unmount the image and the files were really >>> copied into the img. Any other suggestions? or any other way to do >>> this?. >>> >>> Thanks a lot again and sorry for the problems. >>> >>> >>> 2009/3/5 Gabriel Michael Black <[email protected]>: >>>> Also make sure you unmount the disk image before you try simulating >>>> with it. Otherwise your changes might be buffered in the kernel and >>>> not actually visible to M5. >>>> >>>> Gabe >>>> >>>> Quoting Ali Saidi <[email protected]>: >>>> >>>>> Hmm... Maybe delete libc* from the image and then copy it over incase >>>>> an old version is being used. You could also try statically linking >>>>> the m5 binary with your complier. Did you compile the m5 binary with >>>>> the same gcc/libc version? >>>>> >>>>> Ali >>>>> >>>>> On Mar 5, 2009, at 1:48 PM, Bob Nagel wrote: >>>>> >>>>>> Hi Ali thanks for your help, >>>>>> >>>>>> I am getting this error: >>>>>> >>>>>> m5: setaffinity: Function not implemented >>>>>> Done :D >>>>>> >>>>>> I believe is because there is a problem with libc. This is what I did >>>>>> I went to the directory: >>>>>> >>>>>> /opt/crosstool/gcc-3.4.3-glibc-2.3.5/alpha-unknown-linux-gnu/alpha- >>>>>> unknown-linux-gnu/lib >>>>>> >>>>>> And I copy all the libc* and libstdc++* files from there to the /lib >>>>>> directory in the disk image. Then I unmount I ran the simulation and I >>>>>> get the error I said before. >>>>>> >>>>>> Am I missing any file or something in the process to make it work?. >>>>>> Thanks a lot for your help. >>>>>> >>>>>> >>>>>> 2009/3/5 Ali Saidi <[email protected]>: >>>>>>> You need to overwrite the files you have with the ones from the cross >>>>>>> compiler. The problem is the version of libc on the disk doesn't >>>>>>> support the sched_setaffinity() call. >>>>>>> >>>>>>> Ali >>>>>>> >>>>>>> On Mar 5, 2009, at 1:33 AM, Bob Nagel wrote: >>>>>>> >>>>>>>> Hi Ali thanks a lot for your answer. >>>>>>>> >>>>>>>> I already have a bigger image so the option of copy the libc* and >>>>>>>> libstdc++* from one of the cross compilers works perfect for me. >>>>>>>> In my >>>>>>>> image I already have some libc files in the lib directory, so I just >>>>>>>> copied the files that I did not have libstdc++.so.6.0.3, >>>>>>>> libstdc++.so.6, libstdc++.so. But it did not work. Can you provide >>>>>>>> more details with what files I need to copy and where specifically >>>>>>>> in >>>>>>>> the disk image. Sorry for this simple question and thanks a lot >>>>>>>> again. >>>>>>>> >>>>>>>> 2009/3/4 Ali Saidi <[email protected]>: >>>>>>>>> Hi Bob, >>>>>>>>> >>>>>>>>> The m5 binary on the disk image that we distribute doesn't support >>>>>>>>> the >>>>>>>>> pin command. You'll need to compile it yourself. Additionally, I >>>>>>>>> don't >>>>>>>>> believe libc on the disk image supports sched_setaffinity (needed >>>>>>>>> by >>>>>>>>> pin). This is something we need to fix, but it unfortunately >>>>>>>>> involves >>>>>>>>> distributing a new disk image to everyone and updating a bunch of >>>>>>>>> regressions. You can easily make a new disk image by starting >>>>>>>>> with a >>>>>>>>> gentoo image or you can copy the libc* and libstdc++* from one of >>>>>>>>> the >>>>>>>>> cross compilers on the m5sim.org website onto the disk image (you >>>>>>>>> might need to make the actual image bigger to do this). >>>>>>>>> >>>>>>>>> Ali >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On Mar 4, 2009, at 11:54 AM, Bob Nagel wrote: >>>>>>>>> >>>>>>>>>> Hello all, >>>>>>>>>> >>>>>>>>>> This message is related with this one, >>>>>>>>>> http://thread.gmane.org/gmane.comp.emulators.m5.users/3939/focus=3967 >>>>>>>>>> . >>>>>>>>>> >>>>>>>>>> In that message Ali gives an explanation about how to use pin. I >>>>>>>>>> have >>>>>>>>>> been trying to use it but it seems that when I am running the >>>>>>>>>> script >>>>>>>>>> m5 does not recognize the command, following you can see my script >>>>>>>>>> and >>>>>>>>>> the output. >>>>>>>>>> >>>>>>>>>> #!/bin/sh >>>>>>>>>> cd /parsec/install/bin >>>>>>>>>> /sbin/m5 pin 0 ./ferret /parsec/install/inputs/ferret/coreld lsh >>>>>>>>>> /parsec/install/inputs/ferret/queriesd 5 5 8 >>>>>>>>>> /parsec/install/inputs/ferret/output.txt >>>>>>>>>> echo "Done :D" >>>>>>>>>> /sbin/m5 exit >>>>>>>>>> >>>>>>>>>> loading script... >>>>>>>>>> usage: m5 ivlb <interval> >>>>>>>>>> m5 ivle <interval> >>>>>>>>>> m5 initparam >>>>>>>>>> m5 sw99param >>>>>>>>>> m5 exit [delay] >>>>>>>>>> m5 resetstats [delay [period]] >>>>>>>>>> m5 dumpstats [delay [period]] >>>>>>>>>> m5 dumpresetstats [delay [period]] >>>>>>>>>> m5 checkpoint [delay [period]] >>>>>>>>>> m5 readfile >>>>>>>>>> m5 debugbreak >>>>>>>>>> m5 switchcpu >>>>>>>>>> >>>>>>>>>> All times in nanoseconds! >>>>>>>>>> Done :D >>>>>>>>>> >>>>>>>>>> I looked to the code in /util/m5/m5.c and I see that the pin >>>>>>>>>> command >>>>>>>>>> is only executed if linux is define. I do not understand why the >>>>>>>>>> pin >>>>>>>>>> command is inside those defines. Also I tried to delete the >>>>>>>>>> defines >>>>>>>>>> but that did not work. Any help about how to use it?. >>>>>>>>>> >>>>>>>>>> Thanks a lot in advance. >>>>>>>>>> _______________________________________________ >>>>>>>>>> m5-users mailing list >>>>>>>>>> [email protected] >>>>>>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >>>>>>>>>> >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> m5-users mailing list >>>>>>>>> [email protected] >>>>>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >>>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> m5-users mailing list >>>>>>>> [email protected] >>>>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >>>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> m5-users mailing list >>>>>>> [email protected] >>>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >>>>>>> >>>>>> _______________________________________________ >>>>>> m5-users mailing list >>>>>> [email protected] >>>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >>>>>> >>>>> >>>>> _______________________________________________ >>>>> m5-users mailing list >>>>> [email protected] >>>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >>>>> >>>> >>>> >>>> _______________________________________________ >>>> m5-users mailing list >>>> [email protected] >>>> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >>>> >>> >> _______________________________________________ >> m5-users mailing list >> [email protected] >> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users >> > _______________________________________________ > m5-users mailing list > [email protected] > http://m5sim.org/cgi-bin/mailman/listinfo/m5-users > _______________________________________________ m5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
