From: Muhammad A. <m_a...@ya...> - 2008-10-29 22:31:15
|
para virtualized wrote: > Hi oprofile developers! > I am starting research on high performance computing and it requires some > continuous runtime profiling of certain applications. Due to some > limitations (virtualization to be specific) I am stuck with oprofile only. Why? Only way to use hardware performance counters in Xen is oprofile (Xenoprofile). > I have gone through oprofile internals (not religiously through) and have > certain queries, which i think might shorten my development time by giving > me better understanding of oprofile. > > 1- I know that oprofile is a statistical system wide profiler, but what if I > am interested to determine the performance counter value for an application > at runtime without using dump or opreport. Using dump to generate sample > files is time consuming and not good for my case. Can someone please guide How do you know it's too time-consuming? Have you tried using the --image option of opcontrol to direct the oprofile daemon to only record sample data for particular binaries? You'll still have the kernel profiling all applications and threads, but if you use a reasonable profiling interval, the overhead is usually pretty low. The only case where I've seen extraordinary high overhead of the oprofile kernel driver is on systems where there are *many* anon samples from JITed code. AFAIK you cannot give image of xen-kernel and xen-apps (called domain*-xxx). I am doing passive profiling. The overhead is almost 6% CPU time on some benchmarks with profiling interval of say 500000. As I said it has to be continuous runtime profiling for HPC applications therefore this is significant e.g. HPL benchmark for N15000, block size 64 takes 25-30 more seconds to complete in such a scenario. Yes, I can still reduce the interval but i guess to can see my point. > me, where exactly or approx the data in the code is stored? > http://oprofile.sourceforge.net/doc/internals/core-structure.html is useful > but does not exactly tell the coding internals. > > 2- Also when and where the data is copied over to oprofile daemon > (oprofiled)? Is it possible for me to only flush the data of a specific > application (say a.out) to user space file without the overhead of system Not without some serious hacking of the kernel > level sample files? I am not interested in maintaining call graph lists etc, > just plain hardware performance counter values for an application. > > I hope I am making sense. Have you looked at perfmon2 to see if that would satisfy your requirements. please correct me, performon is for IA-64 not for x86-64 or i386. I'll still have a look for better understanding. Now another question.... > > thanks in advance > > Regards > Ati > > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > > > ------------------------------------------------------------------------ > > _______________________________________________ > oprofile-list mailing list > opr...@li... > https://lists.sourceforge.net/lists/listinfo/oprofile-list ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ oprofile-list mailing list opr...@li... https://lists.sourceforge.net/lists/listinfo/oprofile-list |