Re: [hpx-users] Questions about benchmarking hpx tasks

2017-09-20 Thread Tobias Gauweiler
Hartmut,

i rebuild hpx per your instructions and rebuild my own code.
Now when i run it in VTune i get only function names based on hpx, boost
and some other modules but none from my own code.

The function that takes the longest (187ms CPU Time)
is boost::detail::spinlock::lock with first element of the callstack:
hpx::threads::set_thread_lco_description, which looks to me like a intern
hpx lock to setup the worker threads?

I want to use VTune to find out why my code that computes streamlines in
hpx tasks runs slower (Time is taken from creating the integration tasks
until all tasks are finished) when i am giving hpx more threads to work on
(Number threads is smaller/equal the number of cores on my system).
I use one std::lock_guard in my code to
synchronize all tasks to decrease a counter so that i know when all
integration is finished and i did suspect it to make the runtime worse but
its not even showing up as function in VTune.

Any idea how i can make my functions show up in VTune, so that i can see
how long each of my integration tasks took and if its because of my lock?

Kevin,

thank you! I will try that next and hopefully find out whats taking so much
time in my code.

Best regards
Tobias Gauweiler



On 20 September 2017 at 03:46, Kevin Huck <kh...@cs.uoregon.edu> wrote:

> Tobias -
>
> Sorry for the slow reply - I’m traveling and in all day meetings today and
> tomorrow.
>
> To enable OTF2 output, set the following environment variable before
> execution:
> APEX_OTF2=1
>
> You can control the location of the OTF2 archive
> with APEX_OTF2_ARCHIVE_PATH and APEX_OTF2_ARCHIVE_NAME environment
> variables, although the defaults are usually sufficient.
>
> Please email me directly if you have any other questions.
>
> Thanks -
> Kevin
>
> On Sep 19, 2017, at 10:23 AM, Hartmut Kaiser <hartmut.kai...@gmail.com>
> wrote:
>
> Tobias,
>
> Thank you all for your replies.
> I have available for me Intel VTune Amplifier 2018 and Vampir 9.2.
>
> So far i did rebuild HPX with -DHPX_WITH_APEX=ON and -
> DCMAKE_BUILD_TYPE="RelWithDebInfo".
> I couldn't find a cmake or cmd line flag in the documentation how to
> enable OTF file creation. How is that done?
>
>
> I'm cc'ing Kevin on this reply for him to answer the APEX question.
>
> @Hartmut: Do i need to do something extra to use VTune? A simple hotspot
> analysis looks promising, but is only showing me intern hpx function calls
> without any reference to my own code.
>
>
> You can either use APEX or VTune, not both at the same time. In order to
> integrate HPX with VTune you need to specify -DHPX_WITH_ITT_NOTIFY=On and
> -DAMPLIFIER_ROOT= to cmake at configuration time.
> Please make sure that no APEX is enabled (-DHPX_WITH_APEX=Off) in this case.
>
> HTH
> Regards Hartmut
> ---
> http://boost-spirit.com
> http://stellar.cct.lsu.edu
>
>
>
> Best regards
> Tobias Gauweiler
>
> On 1 September 2017 at 15:53, Hartmut Kaiser <hartmut.kai...@gmail.com>
> wrote:
>
> If you are interested in seeing tasks like this
>
> https://pasteboard.co/GzF4jDa.png
>
> Then you should try compiling HPX with APEX enabled (and also enable
>
> OTF)
>
> and then you can use a tool like vampir (not free but they have a trial
> version) or some others I can’t remember the names of (wxparaver?) that
> can display OTF2 trace files. One that I’ve never tried but keep meaning
> to is http://vite.gforge.inria.fr/
>
>
> An alternative option would be to use Intel Amplifier (former Intel VTune)
> for which we have an integration with HPX as well. Let me know if you
> would like to try that for more information.
>
> Regards Hartmut
> ---
> http://boost-spirit.com
> http://stellar.cct.lsu.edu
>
>
>
> JB
>
>
>
>
>
> From: hpx-users-boun...@stellar.cct.lsu.edu [mailto:hpx-users-
> boun...@stellar.cct.lsu.edu] On Behalf Of Tobias Gauweiler
> Sent: 01 September 2017 13:42
> To: hpx-users@stellar.cct.lsu.edu
> Subject: [hpx-users] Questions about benchmarking hpx tasks
>
> Hello,
>
> i want to benchmark my hpx application and i'm not sure what's the best
> way to do this.
>
> My goal is to create a gantt chart with the x axis for the time and y
>
> axis
>
> for the hpx worker thread ids
> and then adding boxes for each task to their corresponding hpx worker id
> with the task computation time as length in x direction.
>
> The application runs on only one locality.
>
> Questions:
>
> 1.) If a task got suspended and then resumed is the hpx worker id still
> the same? If not is there a unique identifier for tasks that i can use
> instead?
>
> 2.) How to measure the computation time of each task? Should i wr

Re: [hpx-users] Questions about benchmarking hpx tasks

2017-09-19 Thread Kevin Huck
Tobias -

Sorry for the slow reply - I’m traveling and in all day meetings today and 
tomorrow.

To enable OTF2 output, set the following environment variable before execution:
APEX_OTF2=1

You can control the location of the OTF2 archive with APEX_OTF2_ARCHIVE_PATH 
and APEX_OTF2_ARCHIVE_NAME environment variables, although the defaults are 
usually sufficient.

Please email me directly if you have any other questions.

Thanks -
Kevin

> On Sep 19, 2017, at 10:23 AM, Hartmut Kaiser <hartmut.kai...@gmail.com> wrote:
> 
> Tobias,
> 
>> Thank you all for your replies.
>> I have available for me Intel VTune Amplifier 2018 and Vampir 9.2.
>> 
>> So far i did rebuild HPX with -DHPX_WITH_APEX=ON and -
>> DCMAKE_BUILD_TYPE="RelWithDebInfo".
>> I couldn't find a cmake or cmd line flag in the documentation how to
>> enable OTF file creation. How is that done?
> 
> I'm cc'ing Kevin on this reply for him to answer the APEX question.
> 
>> @Hartmut: Do i need to do something extra to use VTune? A simple hotspot
>> analysis looks promising, but is only showing me intern hpx function calls
>> without any reference to my own code.
> 
> You can either use APEX or VTune, not both at the same time. In order to 
> integrate HPX with VTune you need to specify -DHPX_WITH_ITT_NOTIFY=On and 
> -DAMPLIFIER_ROOT= to cmake at configuration time. 
> Please make sure that no APEX is enabled (-DHPX_WITH_APEX=Off) in this case.
> 
> HTH
> Regards Hartmut
> ---
> http://boost-spirit.com
> http://stellar.cct.lsu.edu
> 
> 
>> 
>> Best regards
>> Tobias Gauweiler
>> 
>> On 1 September 2017 at 15:53, Hartmut Kaiser <hartmut.kai...@gmail.com>
>> wrote:
>> 
>>> If you are interested in seeing tasks like this
>>> 
>>> https://pasteboard.co/GzF4jDa.png
>>> 
>>> Then you should try compiling HPX with APEX enabled (and also enable
>> OTF)
>>> and then you can use a tool like vampir (not free but they have a trial
>>> version) or some others I can’t remember the names of (wxparaver?) that
>>> can display OTF2 trace files. One that I’ve never tried but keep meaning
>>> to is http://vite.gforge.inria.fr/
>> 
>> An alternative option would be to use Intel Amplifier (former Intel VTune)
>> for which we have an integration with HPX as well. Let me know if you
>> would like to try that for more information.
>> 
>> Regards Hartmut
>> ---
>> http://boost-spirit.com
>> http://stellar.cct.lsu.edu
>> 
>> 
>>> 
>>> JB
>>> 
>>> 
>>> 
>>> 
>>> 
>>> From: hpx-users-boun...@stellar.cct.lsu.edu [mailto:hpx-users-
>>> boun...@stellar.cct.lsu.edu] On Behalf Of Tobias Gauweiler
>>> Sent: 01 September 2017 13:42
>>> To: hpx-users@stellar.cct.lsu.edu
>>> Subject: [hpx-users] Questions about benchmarking hpx tasks
>>> 
>>> Hello,
>>> 
>>> i want to benchmark my hpx application and i'm not sure what's the best
>>> way to do this.
>>> 
>>> My goal is to create a gantt chart with the x axis for the time and y
>> axis
>>> for the hpx worker thread ids
>>> and then adding boxes for each task to their corresponding hpx worker id
>>> with the task computation time as length in x direction.
>>> 
>>> The application runs on only one locality.
>>> 
>>> Questions:
>>> 
>>> 1.) If a task got suspended and then resumed is the hpx worker id still
>>> the same? If not is there a unique identifier for tasks that i can use
>>> instead?
>>> 
>>> 2.) How to measure the computation time of each task? Should i write my
>>> own performance counter or  save the start and end time per task
>> manually?
>>> 
>>> 
>>> Best regards
>>> Tobias Gauweiler
>> 
>> ___
>> hpx-users mailing list
>> hpx-users@stellar.cct.lsu.edu
>> https://mail.cct.lsu.edu/mailman/listinfo/hpx-users
> 
> 

--
Kevin Huck, PhD
Research Associate / Computer Scientist
Performance Research Lab
University of Oregon
kh...@cs.uoregon.edu <mailto:kh...@cs.uoregon.edu>
http://tau.uoregon.edu <http://tau.uoregon.edu/>





___
hpx-users mailing list
hpx-users@stellar.cct.lsu.edu
https://mail.cct.lsu.edu/mailman/listinfo/hpx-users


Re: [hpx-users] Questions about benchmarking hpx tasks

2017-09-19 Thread Hartmut Kaiser
Tobias,

> Thank you all for your replies.
> I have available for me Intel VTune Amplifier 2018 and Vampir 9.2.
> 
> So far i did rebuild HPX with -DHPX_WITH_APEX=ON and -
> DCMAKE_BUILD_TYPE="RelWithDebInfo".
> I couldn't find a cmake or cmd line flag in the documentation how to
> enable OTF file creation. How is that done?

I'm cc'ing Kevin on this reply for him to answer the APEX question.

> @Hartmut: Do i need to do something extra to use VTune? A simple hotspot
> analysis looks promising, but is only showing me intern hpx function calls
> without any reference to my own code.

You can either use APEX or VTune, not both at the same time. In order to 
integrate HPX with VTune you need to specify -DHPX_WITH_ITT_NOTIFY=On and 
-DAMPLIFIER_ROOT= to cmake at configuration time. 
Please make sure that no APEX is enabled (-DHPX_WITH_APEX=Off) in this case.

HTH
Regards Hartmut
---
http://boost-spirit.com
http://stellar.cct.lsu.edu


> 
> Best regards
> Tobias Gauweiler
> 
> On 1 September 2017 at 15:53, Hartmut Kaiser <hartmut.kai...@gmail.com>
> wrote:
> 
> > If you are interested in seeing tasks like this
> >
> > https://pasteboard.co/GzF4jDa.png
> >
> > Then you should try compiling HPX with APEX enabled (and also enable
> OTF)
> > and then you can use a tool like vampir (not free but they have a trial
> > version) or some others I can’t remember the names of (wxparaver?) that
> > can display OTF2 trace files. One that I’ve never tried but keep meaning
> > to is http://vite.gforge.inria.fr/
> 
> An alternative option would be to use Intel Amplifier (former Intel VTune)
> for which we have an integration with HPX as well. Let me know if you
> would like to try that for more information.
> 
> Regards Hartmut
> ---
> http://boost-spirit.com
> http://stellar.cct.lsu.edu
> 
> 
> >
> > JB
> >
> >
> >
> >
> >
> > From: hpx-users-boun...@stellar.cct.lsu.edu [mailto:hpx-users-
> > boun...@stellar.cct.lsu.edu] On Behalf Of Tobias Gauweiler
> > Sent: 01 September 2017 13:42
> > To: hpx-users@stellar.cct.lsu.edu
> > Subject: [hpx-users] Questions about benchmarking hpx tasks
> >
> > Hello,
> >
> > i want to benchmark my hpx application and i'm not sure what's the best
> > way to do this.
> >
> > My goal is to create a gantt chart with the x axis for the time and y
> axis
> > for the hpx worker thread ids
> > and then adding boxes for each task to their corresponding hpx worker id
> > with the task computation time as length in x direction.
> >
> > The application runs on only one locality.
> >
> > Questions:
> >
> > 1.) If a task got suspended and then resumed is the hpx worker id still
> > the same? If not is there a unique identifier for tasks that i can use
> > instead?
> >
> > 2.) How to measure the computation time of each task? Should i write my
> > own performance counter or  save the start and end time per task
> manually?
> >
> >
> > Best regards
> > Tobias Gauweiler
> 
> ___
> hpx-users mailing list
> hpx-users@stellar.cct.lsu.edu
> https://mail.cct.lsu.edu/mailman/listinfo/hpx-users


___
hpx-users mailing list
hpx-users@stellar.cct.lsu.edu
https://mail.cct.lsu.edu/mailman/listinfo/hpx-users


Re: [hpx-users] Questions about benchmarking hpx tasks

2017-09-01 Thread Hartmut Kaiser

> If you are interested in seeing tasks like this
> 
> https://pasteboard.co/GzF4jDa.png
> 
> Then you should try compiling HPX with APEX enabled (and also enable OTF)
> and then you can use a tool like vampir (not free but they have a trial
> version) or some others I can’t remember the names of (wxparaver?) that
> can display OTF2 trace files. One that I’ve never tried but keep meaning
> to is http://vite.gforge.inria.fr/

An alternative option would be to use Intel Amplifier (former Intel VTune) for 
which we have an integration with HPX as well. Let me know if you would like to 
try that for more information.

Regards Hartmut
---
http://boost-spirit.com
http://stellar.cct.lsu.edu


> 
> JB
> 
> 
> 
> 
> 
> From: hpx-users-boun...@stellar.cct.lsu.edu [mailto:hpx-users-
> boun...@stellar.cct.lsu.edu] On Behalf Of Tobias Gauweiler
> Sent: 01 September 2017 13:42
> To: hpx-users@stellar.cct.lsu.edu
> Subject: [hpx-users] Questions about benchmarking hpx tasks
> 
> Hello,
> 
> i want to benchmark my hpx application and i'm not sure what's the best
> way to do this.
> 
> My goal is to create a gantt chart with the x axis for the time and y axis
> for the hpx worker thread ids
> and then adding boxes for each task to their corresponding hpx worker id
> with the task computation time as length in x direction.
> 
> The application runs on only one locality.
> 
> Questions:
> 
> 1.) If a task got suspended and then resumed is the hpx worker id still
> the same? If not is there a unique identifier for tasks that i can use
> instead?
> 
> 2.) How to measure the computation time of each task? Should i write my
> own performance counter or  save the start and end time per task manually?
> 
> 
> Best regards
> Tobias Gauweiler

___
hpx-users mailing list
hpx-users@stellar.cct.lsu.edu
https://mail.cct.lsu.edu/mailman/listinfo/hpx-users