About the run time in cloud computing scenario my measure might be useless.
A cloud instance is a VM that runs on I don't know what hardware and might
be shared with I don't know who. So even if inside my VM the CPU was idle,
I don't now how the CPU was used by other VMs. That being said, for our
particular cloud service provider we observe (on a daily basis for several
months) that the performances are below what we have on our modern
workstations.

Just to be clear : I'm neither complaining about graph tool performances,
nor thinking about improvements that would be cloud computing driven. I
just wanted to make clear that modest improvement (as measured on a modern
work station) might be very meaningful in another environment.

In order to profile the initialization I moved the initialization code in
two functions init_pmap and init_dist, and did 100 runs of
shortest_distance with
identical parameters, cProfiles gives :

23484 function calls (23331 primitive calls) in 6.733 seconds
Ordered by: cumulative time

ncalls  tottime  percall  cumtime  percall filename:lineno(function)
100     3.723    0.037    6.731    0.067
graph_tool/topology/__init__.py:1512(shortest_distance)
100     0.001    0.000    1.833    0.018
graph_tool/topology/__init__.py:1507(init_pmap)
100     0.000    0.000    1.833    0.018
graph_tool/decorators.py:1(copy_property)
200/100 0.003    0.000    1.832    0.018
graph_tool/decorators.py:126(wrapper)
100     1.275    0.013    1.827    0.018
graph_tool/__init__.py:2348(copy_property)
100     0.001    0.000    1.163    0.012
graph_tool/topology/__init__.py:1500(init_dist)
100     0.000    0.000    0.645    0.006
graph_tool/__init__.py:661(<lambda>)
100     0.643    0.006    0.644    0.006
graph_tool/__init__.py:614(__get_set_f_array)
700     0.001    0.000    0.540    0.001   graph_tool/__init__.py:166(_prop)
700     0.003    0.000    0.538    0.001
graph_tool/__init__.py:392(_get_any)
700     0.534    0.001    0.534    0.001
graph_tool/__init__.py:814(reserve)
200     0.000    0.000    0.518    0.003
graph_tool/__init__.py:559(get_array)
200     0.515    0.003    0.517    0.003
graph_tool/__init__.py:581(_get_data)
200     0.004    0.000    0.011    0.000
graph_tool/__init__.py:2289(new_vertex_property)
200     0.002    0.000    0.010    0.000
graph_tool/__init__.py:3071(__init__)
600     0.002    0.000    0.008    0.000
graph_tool/__init__.py:377(__init__)
200     0.002    0.000    0.007    0.000
graph_tool/__init__.py:1531(__init__)
100     0.000    0.000    0.006    0.000
graph_tool/__init__.py:2274(new_property)
800     0.002    0.000    0.004    0.000
graph_tool/__init__.py:202(_type_alias)
599     0.001    0.000    0.003    0.000
graph_tool/__init__.py:437(__del__)
600     0.001    0.000    0.002    0.000
graph_tool/__init__.py:264(_converter)
599     0.002    0.000    0.002    0.000
graph_tool/__init__.py:432(__unregister_map)
200     0.001    0.000    0.002    0.000
graph_tool/__init__.py:909(__new__)

The complete cprofile output is attached to this mail.

Le jeu. 29 juin 2017 à 13:16, Tiago de Paula Peixoto <[email protected]> a
écrit :

> On 29.06.2017 11:58, François Kawala wrote:
> > I did the above timings on a modern work station, to switch to a cloud
> > provider induces a non negligible overhead (+63% for the distances /
> +469%
> > for the pred map).
>
> This I don't understand at all. Why would the behavior in a "cloud"
> environment be any different?
>
> --
> Tiago de Paula Peixoto <[email protected]>
>
> _______________________________________________
> graph-tool mailing list
> [email protected]
> https://lists.skewed.de/mailman/listinfo/graph-tool
>

Attachment: profile
Description: Binary data

_______________________________________________
graph-tool mailing list
[email protected]
https://lists.skewed.de/mailman/listinfo/graph-tool

Reply via email to