|
From: Josef W. <Jos...@gm...> - 2005-01-24 16:40:52
|
On Monday 24 January 2005 12:51, Abhik SARKAR wrote: > Hello Julian, > > I had recently started using valgrind. I am faciong couple of > problems. > > 1) pthread_barrier isnt implemented. > > 2) How to get profile for multiple threaded application. Can I get seperate > cache profiles for each thread. If yes then how? How close are the readings > taken on a single processor to a actual run on multiprocessor environment. The callgrind tool for valgrind (see kcachegrind.sf.net) can separate profiles according to threads; use "--dump-threads=yes". You won't see any coherence misses. The cache simulator of cachegrind/callgrind only simulates a single cache hierarchy. I.e. the results look similar to a multithreaded program running on a uniprocessor. You would have to add simulation of multiple CPU caches, and enhance the simulator for a cache coherence protocol (broadcast/directory). Additionally, a reasonable mapping of thread numbers to processors (and their caches) has to be found. As this should emulate real OS scheduling, load balancing issues with process migration should be involved. Even then, valgrind only simulates one thread at a time. Reality could be approximated by reducing Valgrinds time slice for threads (currently 50000 basic blocks?) to perhaps 50. Josef > > Regards > > Abhik > > > > ------------------------------------------------------- > This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting > Tool for open source databases. Create drag-&-drop reports. Save time > by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. > Download a FREE copy at http://www.intelliview.com/go/osdn_nl > _______________________________________________ > Valgrind-users mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-users |