:orphan: |rss_image| **benchmark - 1/1** :ref:`Blog ` :ref:`benchmark (4) ` :ref:`onnx (8) ` .. |rss_image| image:: feed-icon-16x16.png :target: ../_downloads/rss.xml :alt: RSS ---- .. index:: benchmark .. _ap-cat-benchmark-0: benchmark - 1/1 +++++++++++++++ .. blogpostagg:: :title: ONNX Backend Scoreboard :date: 2022-05-29 :keywords: onnx,coverage,scoreboard :categories: benchmark :rawfile: 2022/2022-05-29_onnxcov.rst `ONNX Backend Scoreboard `_ shows how many operators a runtime supports. Page :ref:`l-backend-python-coverage` computes the same figure for the Python Runtime implemented in this package, more than 90%. .. blogpostagg:: :title: Custom C++ TopK :date: 2019-12-16 :keywords: scikit-learn,topk,argpartition :categories: benchmark :rawfile: 2019/2019-12-16_topk.rst It started with the fact the python runtime for the AdaBoostRegressor was quite slow. I noticed three operators were quite slow even though their implementation was based on :epkg:`numpy`: *TopK*, *ArrayFeatureExtractor* and *GatherElement*. I made a custom implementation of the first two. ... .. blogpostagg:: :title: RandomForestClassifier - prediction for one observation :date: 2019-12-04 :keywords: scikit-learn,py-spy,benchmark,one-off prediction :categories: benchmark :rawfile: 2019/2019-12-04_py-spy.rst I was meeting with Olivier Grisel this morning and we were wondering why :epkg:`scikit-learn` was slow to compute the prediction of a random forest for one observation compare to what :epkg:`onnxruntime` does, and more specically some optimized C++ code inspired from :epkg:`onnxruntime`. We used :epkg:`py-spy` and wrote the following script: ... .. blogpostagg:: :title: The bug which makes you waste time :date: 2019-10-04 :keywords: asv,bug :categories: benchmark :rawfile: 2019/2019-10-04_asv.rst It is not a bug but it is something which makes you waste some significant time just to understand what's going on. :epkg:`asv` would refuse to detect the benchmark I was trying to set up just because filenames did contain dots. So, for :epkg:`asv` don't add a file ``name.option.py`` but use ``name_option.py``. A couple of benchmark for tries: :epkg:`bench1`, :epkg:`bench2`. ---- |rss_image| **benchmark - 1/1** :ref:`2021-08 (3) ` :ref:`2022-02 (1) ` :ref:`2022-05 (1) ` :ref:`2022-06 (1) ` :ref:`2022-11 (1) `