タグ

pythonとcythonに関するkoma_gのブックマーク (3)

  • 深入りしないCython入門 - Qiita

    Cythonとは? Pythonは処理速度は決して早くない、むしろ遅い部類である。 そこで、C/C++に変換することにより高速化しようというのがCythonである。 低級言語のC/C++(昔は高級言語だったが、現在は低級言語といって良いだろう)に変換してネイティブコンパイルするのだから、速いに決まっている。 この記事の目的 「Cythonは難しい」、「CythonはC/C++の知識が必要」という印象があるだろう。答えは「Yes」である。 しかし、その答えはCythonをフルに使いこなす事が前提である。 実はCythonは、C/C++をそんなに知らなくても、ちょっとした高速化には充分な恩恵を得られるように設計されているのだ。 しかし、無闇にCythonを使っても「あまり高速化されない」、「移行がすごく大変」と散々な結果になるだろう。そこら辺のポイントを踏まえ、C/C++をあまり知らない初心者

    深入りしないCython入門 - Qiita
  • PythonからC言語の関数を呼び出してユニットテストする環境を作る: Cython編 - EurekaMoments

    Cython ―Cとの融合によるPythonの高速化 作者:Kurt W. SmithオライリージャパンAmazon 目次 目次 はじめに Cythonとは PythonとC言語を組み合わせるメリット 参考記事 ステップ1: C言語のコードを書く ステップ2: C言語のコードをラッピングするCythonコードを書く ステップ3: Cythonコードをビルドするsetup.pyを書く ステップ4: コンパイル・ビルドする ビルドする際のハマりポイント ステップ5: ユニットテストのPythonコードを書く 今後の課題 はじめに 自分は普段の仕事でC言語のプログラムを実装するのがメインです。しかしながら、今の職場にて自分が実装したC言語のソフトをデバッグするためには、実際のコントローラに書き込んでからベンチシミュレータで動かす、くらいしか方法がありません。 いちいちコントローラに書き込んだりす

    PythonからC言語の関数を呼び出してユニットテストする環境を作る: Cython編 - EurekaMoments
  • Pythonを高速化するCythonを使ってみた - Kesinの知見置き場

    突然ですが私はPythonが好きです。でもPythonは遅いです。 何が遅いかというと、致命的なことに四則演算が遅いです。でも他の動的型付け言語でスクリプト言語と呼ばれるPerl, Ruby, Javascript も C, Javaのようなコンパイルを行う静的型付け言語に比べれば圧倒的に遅いです(近年ではJavascriptのように著しく進歩した言語もあるので必ずしもそうだとは言えませんが)。 スクリプト言語が遅い原因の一つは、変数の型が指定されていないので型のチェックを毎回行う必要があるからです。この特性があるおかげ自動的に型を変換してオーバーフローを防いでくれるというメリットもあるのですが、どうしても静的型付け言語よりは速度を出すことができません。 ならPythonのコードに型指定を加えてコンパイルしちゃえばいいじゃん!というのがCythonです。正確にはPythonライクな文法で書

    Pythonを高速化するCythonを使ってみた - Kesinの知見置き場
  • 1