BlogDocs

Improve performance by avoiding loading the GMT library repeatedly(#2930)

Merged
Merging
clib/load-libgmt
into
main
+1%
IMPROVEMENTS
0
REGRESSIONS
0
UNTOUCHED
64
NEW
0
DROPPED
0
IGNORED
0

Benchmarks

test_basemap
pygmt/tests/test_basemap.py::test_basemap
+2%
16 ms
15.6 ms
test_geopandas_info_geodataframe
pygmt/tests/test_geopandas.py::test_geopandas_info_geodataframe
+1%
25 ms
24.9 ms
test_grd2cpt
pygmt/tests/test_grd2cpt.py::test_grd2cpt
+2%
42.4 ms
41.6 ms
test_grd2xyz
pygmt/tests/test_grd2xyz.py::test_grd2xyz
+2%
9.9 ms
9.7 ms
test_grdclip_no_outgrid
pygmt/tests/test_grdclip.py::test_grdclip_no_outgrid
+1%
17.9 ms
17.7 ms
test_grdcontour_labels
pygmt/tests/test_grdcontour.py::test_grdcontour_labels
+2%
19.6 ms
19.2 ms
test_grdcut_dataarray_in_dataarray_out
pygmt/tests/test_grdcut.py::test_grdcut_dataarray_in_dataarray_out
+1%
17.9 ms
17.6 ms
test_grdfill_dataarray_out
pygmt/tests/test_grdfill.py::test_grdfill_dataarray_out
+2%
17.9 ms
17.6 ms
test_grdfilter_dataarray_in_dataarray_out
pygmt/tests/test_grdfilter.py::test_grdfilter_dataarray_in_dataarray_out
+1%
18 ms
17.8 ms
test_grdgradient_no_outgrid
pygmt/tests/test_grdgradient.py::test_grdgradient_no_outgrid
+2%
18 ms
17.7 ms
test_compute_bins_no_outfile
pygmt/tests/test_grdhisteq.py::test_compute_bins_no_outfile
+2%
10.7 ms
10.5 ms
test_equalize_grid_no_outgrid
pygmt/tests/test_grdhisteq.py::test_equalize_grid_no_outgrid
+1%
17.9 ms
17.7 ms
test_grdimage_grid_and_shading_with_xarray[png]
pygmt/tests/test_grdimage.py::test_grdimage_grid_and_shading_with_xarray[png]
0%
1.3 s
1.3 s
test_grdinfo
pygmt/tests/test_grdinfo.py::test_grdinfo
+3%
8.2 ms
8 ms
test_grdlandmask_no_outgrid
pygmt/tests/test_grdlandmask.py::test_grdlandmask_no_outgrid
0%
429.3 ms
431 ms
test_grdproject_no_outgrid[+proj=merc +ellps=WGS84 +units=m +width=10]
pygmt/tests/test_grdproject.py::test_grdproject_no_outgrid[+proj=merc +ellps=WGS84 +units=m +width=10]
+1%
21.4 ms
21.1 ms
test_grdproject_no_outgrid[EPSG:3395 +width=10]
pygmt/tests/test_grdproject.py::test_grdproject_no_outgrid[EPSG:3395 +width=10]
+1%
21.5 ms
21.2 ms
test_grdproject_no_outgrid[M10c]
pygmt/tests/test_grdproject.py::test_grdproject_no_outgrid[M10c]
+1%
21 ms
20.7 ms
test_grdsample_dataarray_out
pygmt/tests/test_grdsample.py::test_grdsample_dataarray_out
+2%
21.3 ms
20.9 ms
test_grdtrack_input_dataframe_and_dataarray
pygmt/tests/test_grdtrack.py::test_grdtrack_input_dataframe_and_dataarray
+2%
10.1 ms
9.9 ms
test_grdview_drapegrid_dataarray
pygmt/tests/test_grdview.py::test_grdview_drapegrid_dataarray
0%
1.3 s
1.3 s
test_grdvolume_no_outgrid
pygmt/tests/test_grdvolume.py::test_grdvolume_no_outgrid
+2%
9.7 ms
9.5 ms
test_histogram[Series]
pygmt/tests/test_histogram.py::test_histogram[Series]
+3%
16.5 ms
16.1 ms
test_histogram[list]
pygmt/tests/test_histogram.py::test_histogram[list]
+3%
16.5 ms
16 ms
test_info_pandas_dataframe_date_column[datetime64[ns]]
pygmt/tests/test_info.py::test_info_pandas_dataframe_date_column[datetime64[ns]]
+1%
12.9 ms
12.8 ms
test_info_xarray_dataset_time_column
pygmt/tests/test_info.py::test_info_xarray_dataset_time_column
+1%
13 ms
12.9 ms
test_inset_aliases
pygmt/tests/test_inset.py::test_inset_aliases
0%
569.1 ms
567.5 ms
test_io_load_dataarray
pygmt/tests/test_io.py::test_io_load_dataarray
0%
26.1 ms
26 ms
test_legend_entries
pygmt/tests/test_legend.py::test_legend_entries
+1%
129.1 ms
128.1 ms
test_logo
pygmt/tests/test_logo.py::test_logo
0%
178.3 ms
177.5 ms
test_makecpt_output_cpt_file
pygmt/tests/test_makecpt.py::test_makecpt_output_cpt_file
+2%
12 ms
11.8 ms
test_meca_spec_multiple_focalmecha[array2d]
pygmt/tests/test_meca.py::test_meca_spec_multiple_focalmecha[array2d]
+2%
31.7 ms
31.1 ms
test_meca_spec_multiple_focalmecha[dataframe]
pygmt/tests/test_meca.py::test_meca_spec_multiple_focalmecha[dataframe]
+2%
32.4 ms
31.8 ms
test_meca_spec_multiple_focalmecha[dict_mecha]
pygmt/tests/test_meca.py::test_meca_spec_multiple_focalmecha[dict_mecha]
+2%
32.9 ms
32.3 ms
test_meca_spec_multiple_focalmecha[dict_mecha_mixed]
pygmt/tests/test_meca.py::test_meca_spec_multiple_focalmecha[dict_mecha_mixed]
+2%
33 ms
32.3 ms
test_nearneighbor_input_xyz
pygmt/tests/test_nearneighbor.py::test_nearneighbor_input_xyz
0%
1.4 s
1.4 s
test_plot_vectors
pygmt/tests/test_plot.py::test_plot_vectors
+2%
17.1 ms
16.7 ms
test_plot3d_vectors
pygmt/tests/test_plot3d.py::test_plot3d_vectors
+2%
17.6 ms
17.2 ms
test_project_input_matrix[DataFrame]
pygmt/tests/test_project.py::test_project_input_matrix[DataFrame]
+2%
9.7 ms
9.5 ms
test_project_input_matrix[Dataset]
pygmt/tests/test_project.py::test_project_input_matrix[Dataset]
+2%
11.5 ms
11.3 ms
test_project_input_matrix[array]
pygmt/tests/test_project.py::test_project_input_matrix[array]
+2%
9.4 ms
9.2 ms
test_psconvert
pygmt/tests/test_psconvert.py::test_psconvert
+2%
26.5 ms
25.9 ms
test_rose_plot_data_using_cpt
pygmt/tests/test_rose.py::test_rose_plot_data_using_cpt
+2%
18.7 ms
18.2 ms
test_select_input_dataframe
pygmt/tests/test_select.py::test_select_input_dataframe
+1%
35 ms
34.8 ms
test_begin_end
pygmt/tests/test_session_management.py::test_begin_end
+2%
36 ms
35.4 ms
test_solar_set_terminator_datetime[terminator_datetime1]
pygmt/tests/test_solar.py::test_solar_set_terminator_datetime[terminator_datetime1]
+2%
25.6 ms
25.2 ms
test_solar_set_terminator_datetime[terminator_datetime_string]
pygmt/tests/test_solar.py::test_solar_set_terminator_datetime[terminator_datetime_string]
+2%
26.3 ms
26 ms
test_sph2grd_no_outgrid
pygmt/tests/test_sph2grd.py::test_sph2grd_no_outgrid
+1%
811.2 ms
806 ms
test_sphdistance_no_outgrid
pygmt/tests/test_sphdistance.py::test_sphdistance_no_outgrid
0%
149.2 ms
149 ms
test_sphinterpolate_no_outgrid
pygmt/tests/test_sphinterpolate.py::test_sphinterpolate_no_outgrid
+1%
74.6 ms
74 ms
test_subplot_basic_frame
pygmt/tests/test_subplot.py::test_subplot_basic_frame
+2%
64.3 ms
63.2 ms
test_surface_input_xyz
pygmt/tests/test_surface.py::test_surface_input_xyz
+1%
25.7 ms
25.5 ms
test_ternary_3_labels
pygmt/tests/test_ternary.py::test_ternary_3_labels
+1%
27.6 ms
27.2 ms
test_text_multiple_lines_of_text
pygmt/tests/test_text.py::test_text_multiple_lines_of_text
+2%
19.9 ms
19.5 ms
test_timestamp_font
pygmt/tests/test_timestamp.py::test_timestamp_font
+2%
16.1 ms
15.7 ms
test_delaunay_triples_input_xyz
pygmt/tests/test_triangulate.py::test_delaunay_triples_input_xyz
0%
45 ms
44.8 ms
test_regular_grid_no_outgrid
pygmt/tests/test_triangulate.py::test_regular_grid_no_outgrid
0%
77.4 ms
77.1 ms
test_velo_pandas_dataframe
pygmt/tests/test_velo.py::test_velo_pandas_dataframe
+2%
22.3 ms
22 ms
test_which_multiple
pygmt/tests/test_which.py::test_which_multiple
+1%
13.9 ms
13.8 ms
test_wiggle_data_incols
pygmt/tests/test_wiggle.py::test_wiggle_data_incols
+2%
16.7 ms
16.3 ms
test_x2sys_cross_input_dataframe_output_dataframe
pygmt/tests/test_x2sys_cross.py::test_x2sys_cross_input_dataframe_output_dataframe
+1%
25.4 ms
25.1 ms
test_x2sys_init_units_gap
pygmt/tests/test_x2sys_init.py::test_x2sys_init_units_gap
+1%
11.5 ms
11.4 ms
test_xyz2grd_input_array[Dataset]
pygmt/tests/test_xyz2grd.py::test_xyz2grd_input_array[Dataset]
+1%
46.9 ms
46.5 ms
test_xyz2grd_input_array[array]
pygmt/tests/test_xyz2grd.py::test_xyz2grd_input_array[array]
0%
48.8 ms
48.8 ms

Commits

Click on a commit to change the comparison range
base
main
88ab1ca
+2%
clib: Search and load the GMT library only one time
51f3943
6 months ago by seisman
0%
Merge branch 'main' into clib/load-libgmt
6936f59
6 months ago by seisman
0%
Add a unittest
f589ff8
6 months ago by seisman
0%
Apply suggestions from code review Co-authored-by: Wei Ji <23487320+weiji14@users.noreply.github.com>
401a0f8
6 months ago by seisman
0%
Add a test to check multiprocessing support
48c00ae
6 months ago by seisman
0%
Mark the test as xfail on Windows
b31fe19
6 months ago by seisman
0%
Merge branch 'main' into clib/load-libgmt
ce263ec
6 months ago by seisman
0%
Improve tests
820e11b
6 months ago by seisman
+13%
Remove the multiprocessing test
7a2d96d
6 months ago by seisman
-13%
Merge branch 'main' into clib/load-libgmt
bf6083f
6 months ago by seisman
0%
Merge branch 'main' into clib/load-libgmt
11cb76b
6 months ago by seisman
ResourcesHomePricingDocsBlogGitHub
Copyright © 2024 CodSpeed Technology SAS. All rights reserved.