GPU の動き予測ハードウェアをOpenCLから使う

最近のGPUは、動画エンコーダを実装しているものが多いです。 Intel社のGPUは、この動画エンコーダで使われる、ブロック単位での動き予測ハードウェアを、OpenCLから使うことができます。 公式の解説 : https […]

ソフトウェアパイプラインの手書きをDRYで行う

ソフトウェアパイプライン (SWPL) を、Don’t Repeat Yourself で書くというお話です。 サンプルとして次のプログラムを考えます。

無線LAN付きSDカードをマイコンのように使う

東芝のFlashAirというSDメモリーカードがあります。 フラッシュメモリに加えて無線LAN基地局機能とマイコンを内蔵していて、電源さえ供給すればこのカードだけでWebサーバーとして使えます。あるいは、Webインターフ […]

(小ネタ)比較してインクリメント/デクリメント

SSE, AVXの比較結果は真の場合、全ビットが立ちますが、これは -1 とも解釈できるので、 [crayon-5c4130f53aee4253803930/] は、それぞれ、 [crayon-5c4130f53aeea […]

命令単位の時間を計測する (準備)

命令単位の時間をはかってみましょう。この場合は、命令のクロック単位で知りたいことが多いので、CPU_CLK_UNHALTEDの値を使ってみます。 http://proc-cpuinfo.fixstars.com/2014 […]

その他の時間計測方法

rdtscp や CPU_CLK_UNHALTED は、細かい性能を計測する場合には便利ですが、大きな粒度で計測したい場合、単位の変換などが面倒です。状況に応じて、色々な方法を使い分けると良いでしょう。 以下、思い付く範 […]

Parallellaの新SDKリリース

Parallellaの新SDK&Linuxカーネルがリリースされました! http://forums.parallella.org/viewtopic.php?f=13&t=1883 第1回の記事を書いている間に […]

CPU_CLK_UNHALTEDの値を取得する

近年のCPUは電力削減のために、負荷にあわせてクロックが変動するものが多くなっています。 rdtsc, rdtscp で取得できる値は、このクロックとは別にカウントされており、省電力機能の有無に関わらず、一定クロックでカ […]

rdtscp を使う

x86マシンでは、処理時間を計測する時、rdtsc 命令を使うと便利な場合があります。 しかし、rdtsc で取得できるタイムスタンプ値は、コア毎に同期されておらず、マザーボードやBIOSによっては、大きな差が出ることが […]

parallella触ろう #00

ついに、ポータブルスーパーコンピュータと呼ばれて久しいParallellaが 国内でも容易に入手可能になりました。 Parallellaって何?って方は、PC Watchさんの記事をご覧いただければ http://pc. […]