<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta name=Title content=""><meta name=Keywords content=""><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:Calibri;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman";}
span.EmailStyle17
        {mso-style-type:personal;
        font-family:Calibri;
        color:windowtext;}
span.EmailStyle18
        {mso-style-type:personal;
        font-family:Calibri;
        color:#1F497D;}
span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:Calibri;
        color:windowtext;}
span.msoIns
        {mso-style-type:export-only;
        mso-style-name:"";
        text-decoration:underline;
        color:teal;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body bgcolor=white lang=EN-US link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt'>Thank you Axel!<br><br>If I wanted to run the script through pvpython would I structure the command to be:<br><br>valgrind_callgrind pvpython script.py  <br><br>Thank you,<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt'>Chris Neal<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt'><o:p> </o:p></span></p><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b><span style='color:black'>From: </span></b><span style='color:black'>ParaView <paraview-bounces@paraview.org> on behalf of "Gerstenberger, Axel" <Axel.Gerstenberger@Rolls-Royce.com><br><b>Date: </b>Tuesday, August 2, 2016 at 2:58 AM<br><b>To: </b>"paraview@paraview.org" <paraview@paraview.org><br><b>Subject: </b>Re: [Paraview] Profiling Paraview<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-family:"Times New Roman"'><o:p> </o:p></span></p></div><div><div><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>Hi Chris,</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'> </span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>I am using valgrind & callgrind and visualize with kcachegrind and use the RelWithDebInfo for cmake as a compromise for speed of execution and useful output.</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'> </span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>I have a bash script valgrind_callgrind in my PATH with:</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>#!/bin/bash </span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>valgrind -v --numcallers=50 --trace-children=yes --tool=callgrind --collect-jumps=yes --dump-instr=yes --dump-line=yes --collect-systime=yes “$@”</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>and call that like</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>valgrind_callgrind ./paraview  or valgrind_callgrind script.py.</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'> </span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>You’ll get several callgrind.out.xxxxx for each process started. You can also profile Paraview python code and parallel runs, if you start pvserver with above command. kcachegrind is then used to look at each of these files.</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'> </span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>Callgrind execution is quite slow, but it helped me a lot.</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'> </span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>Cheers,</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'>Axel</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'> </span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-size:11.0pt;color:#1F497D'> </span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB> <o:p></o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:Tahoma'>From:</span></b><span style='font-size:10.0pt;font-family:Tahoma'> ParaView [mailto:paraview-bounces@paraview.org] <b>On Behalf Of </b>Christopher Neal<br><b>Sent:</b> Monday, August 01, 2016 6:19 PM<br><b>To:</b> paraview@paraview.org<br><b>Subject:</b> [Paraview] Profiling Paraview</span><span lang=EN-GB><o:p></o:p></span></p></div></div><p class=MsoNormal><span lang=EN-GB> <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt'>Hello,</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt'> </span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt'>For several months now I have had a serious issue with a Paraview Python script causing an enormous slowdown in the performance of Paraview as it executes. I have tried the old-fashioned method of peppering timing statements everywhere in the python script, but it is very tedious and hasn’t led me to the source of the issue. I was wondering if anyone has any suggestions for how to run a Paraview python script through a more advanced software profiler i.e. has anyone profiled the performance of Paraview as it executes a python script? And if so, what tools did you use?<br><br>Thank you,</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt'>Chris Neal</span><span lang=EN-GB><o:p></o:p></span></p><p class=MsoNormal><span lang=EN-GB style='font-family:"Times New Roman"'>Rolls-Royce Deutschland Ltd & Co KG Sitz/Registered Office: Blankenfelde-Mahlow, Deutschland, Registergericht/Court of Register: Amtsgericht Potsdam, HRA 2731 P, Persönlich haftende Gesellschafterin/General Partner: Rolls-Royce General Partner Limited, Sitz/Registered Office: Derby, United Kingdom, Register: Registry of Companies Wales and England, 4066556, Directors/Geschäftsführer: Paul O’Neil, Alastair McIntosh, Nicole Fehr, Dr. Holger Cartsburg Confidentiality Notice: This email and any attachments are confidential to the intended recipient and may also be privileged. If you are not the intended recipient please delete it from your system and notify the sender. You should not copy it or use it for any purpose nor disclose or distribute its contents to any other person. <o:p></o:p></span></p><p><span lang=EN-GB><br>The data contained in, or attached to, this e-mail, may contain confidential information. If you have received it in error you should notify the sender immediately by reply e-mail, delete the message from your system and contact +44 (0) 3301235850 (Security Operations Centre) if you need assistance. Please do not copy it for any purpose, or disclose its contents to any other person.<o:p></o:p></span></p><p><span lang=EN-GB>An e-mail response to this address may be subject to interception or monitoring for operational reasons or for lawful business practices.<o:p></o:p></span></p><p><span lang=EN-GB>(c) 2016 Rolls-Royce plc<o:p></o:p></span></p><p><span lang=EN-GB>Registered office: 62 Buckingham Gate, London SW1E 6AT Company number: 1003142. Registered in England.<o:p></o:p></span></p></div></div><p class=MsoNormal><span style='font-family:"Times New Roman"'>_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView Search the list archives at: http://markmail.org/search/?q=ParaView Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/paraview <o:p></o:p></span></p></div></body></html>