概要 競技プログラミングを行っているときに,PythonでTLEを出したコードをPyPyで出すとACになったり,逆にPyPyでは通らないコードがPythonでは通ったりして,やりづらかったので,どちらで出すべきかを考えるために,よく使う手法それぞれの実行時間を計測しました. 計測時間はすべてAtCoderのコードテストで測定しています. 新ジャッジシステム 新ジャッジでの結果に更新しました.Python,PyPy共に速度の改善が見られます.特にPyPyは相当早くなっています. ループ
タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。
Introduction In the last year or two I have worked on and off on making PyPy's JSON faster, particularly when parsing large JSON files. In this post I am going to document those techniques and measure their performance impact. Note that I am quite a lot more constrained in what optimizations I can apply here, compared to some of the much more advanced approaches like Mison, Sparser or SimdJSON bec
VSCode + DockerでAtCoderのテスト・提出ができる環境構築【Python,PyPy】PythonAtCoderDockerPython3競技プログラミング はじめに 私は2022年9月からAtCoderを始めて、今までサイト内にあるコードテストを使ってPython・PyPy3で問題を解いていました。 しかし、サンプルのテスト・提出をするのに毎度コピー&ペーストするのが煩わしくコマンド一つで完結させたいのと、ローカル環境下に色々インストールすると今後依存関係等で大変になるかと思い、VSCode + Dockerを使って簡単にテスト・提出ができる環境構築を行いました。 環境はWindows10を使用しています。 準備 以下のものがインストールされていない場合は事前に準備をしておきます。 細かいインストール手順等は今回のメインではないため割愛させていただきます。 VSCode
The PyPy team is proud to release the version 7.2.0 of PyPy, which includes two different interpreters: PyPy2.7, which is an interpreter supporting the syntax and the features of Python 2.7 including the stdlib for CPython 2.7.13 PyPy3.6: which is an interpreter supporting the syntax and the features of Python 3.6, including the stdlib for CPython 3.6.9. The interpreters are based on much the same
高速なPythonの実装系を開発しているPyPyチームは2019年10月8日(米国時間)、「PyPy Status Blog: PyPy's new JSON parser」において、ここ1、2年で取り組んできたJSONパーサの高速化の取り組みについて発表した。 JSONデータは特に扱いが増えているデータ形式。さまざまなプログラミング言語が基本的なデータ形式として扱っており、設定ファイルのような使い方から大規模データ保持の方法としてまで幅広く使われている。 PyPyチームはいくつかの手法を試して高速化に取り組んだ。結果、処理速度は、CPythonおよびNodeの双方よりも高速化することに成功したとしている。この新しいパーサは次のリリースバージョンとなるPyPy 7.2に同梱が予定されている。 ベンチマーク結果 - 資料: PyPyチーム ベンチマーク結果 - 資料: PyPyチーム ただし
高速なPython実行環境のPyPy開発チームは10月14日、最新版となる「PyPy 7.2」を公開した。64ビットARMアーキテクチャのサポートが追加されている。 PyPyはPythonで実装されたPythonの実行環境。JITコンパイラによる高速さ、低いメモリ使用量を特徴とし、Cで実装されたPython(CPython)よりも高速に動く場合もあるという。 PyPy 7.2は2月に公開された7系の最新のポイントリリースとなる。100%の後方互換性をうたっており、Python 2.7およびPython 3.6に対応するバージョンがそれぞれリリースされている。なおPython 3.6に対応する「PyPy3.6」は本バージョンでベータから正式扱いになった。開発チームはPython 3.7に対応するバージョンの開発作業をスタートしているという。 本バージョンでは新たに64ビットのARMアーキテク
はじめに Python で競技プログラミングをしている人々の間では、「PyPy の文字列結合( += )は CPython のそれに比べてオーダーレベルで遅い」という罠はもはや常識になっています。 しかし、これは「PyPy の文字列結合が遅い」というわけではないのです。この間違った認識が広まっているせいで、PyPy が文字列処理に弱いようなイメージを持っている人も少なくないようです。1 この記事では、PyPy で文字列結合が O(N) かかる理由と、CPython だと O(1) な理由を説明するとともに、「CPython なら O(1) だから安心」という認識だとまずいぞという話をします。 ちなみに、記事内での計算量の表記に用いる N という文字は、ループ回数だったり文字列の長さだったりします。文脈から読み取ってください。 PyPy の += は遅いらしい こんなコードを考えてみます。
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く