Skip to content

GoogleBenchmark setup  #2

Open
Open

Description

@vincecr0ft

Two files have been added. runBinnedTest.cxx and buildBinnedTest3.cxx These are simple ROOT macros that have been provided to the ROOT Benchmarking team. Results on earlier tests can be seen here.

As can be seen the time goes up for multiple cores. this is apparently still true with more cores capping the job time at taking more than 12 hours.

A first solution is proposed to kill lines 57 and 61 (mentioning ActivateStatError()) and run on up to 8 cores.

Once the google benchmark code runs well on the knl with proper scaling this test can be extended to other systems (e.g. on NLESC machines) but in the mean while the code to run the tests can be found here.

Activity

  1. egpbos commented on Sep 4, 2017

    @egpbos
    Member

    /user/vcroft/public_html/forPatrick/outputAugust09

  2. egpbos commented on Sep 7, 2017

    @egpbos
    Member

    Yesterday, we ran a simple test with a modified buildBinnedTest3.cxx that produces just 1 channel and no nuisance parameters. We benchmarked it on up to 8 cores, with and without CPU affinity activated. Results:
    total_timing
    Blue lines are measured wallclock time, purple lines are theoretical "ideal scaling" times, i.e. the time it would take if the runtime scaled ideally with number of cores. That it does not is a known problem for this type of likelihood which is being worked on.

  3. egpbos commented on Sep 7, 2017

    @egpbos
    Member

    @vincecr0ft what are the other parameters in this run actually, N_samples, N_events and N_bins?

  4. egpbos commented on Sep 7, 2017

    @egpbos
    Member

    Judging by the other set of workspaces, I guess it's 1 sample, 1000 events, 10 bins, is that correct?

  5. egpbos commented on Sep 7, 2017

    @egpbos
    Member

    For completeness' sake, this plot compares the total and ideal wall clock times (blue and red) to the CPU times. Green is the CPU time of the master process, purple the sum of all the MPFE processes' CPU times and yellow the sum of green and purple (i.e. the total CPU time of the entire minimization process over multiple CPUs).

    timing_total

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions