月別: 2017年11月

GTK+で強制的に画面(ウィジェット/ウィンドウ)を更新する

投稿日: 2017年11月30日

GTK+を用いて簡単なGUIアプリケーションを開発する時、毎回忘れてしまうのでメモ。 重い処理をさせながらプログレスバーやラベルなどのウィジェットを更新したい時、スレッドを立ててUIスレッドがビジーにならないようにすることが多いが、どうしてもメインスレッドで更新したい時がある。 そんな時、Tcl/TkではTk::updateを用いるがGTK+ではgtk_main_iteration()を用いる。RubyではGtk::main_iteration, Pythonではgtk.main_iteratiom()である。 これを更新したいタイミングで呼び出すことで、強制的にウィンドウ(ウィジット)を更新…(続く)

Alea GPUライブラリを使ってC#で簡単GPU並列プログラミング

投稿日: 2017年11月20日

C#でCUDAを使ったGPUの並列処理の日本語の情報が少なかったので、C#で使えるGPUライブラリであるAlea GPUライブラリの導入方法をここに残す。 ここでは、Visual Studio (Visual C#)がインストールされていて、cudaに対応したGPUが搭載されており、cudaドライバなどがインストールされている状態のWindowsを前提としている。 これらの環境が整っていない場合はまずは整える必要がある。 この記事ではWindows 10, Visual Studio 2017 Communityを使用した場合を紹介するが他のバージョンでもそう変わらないはずである。 プロジェク…(続く)

PyCallを用いてTensorFlowをRubyで使う

投稿日: 2017年11月10日

PyCallはmrknさんが開発しているPythonのライブラリをRubyで使うgemである。 バージョンが1.0になって大幅に使いやすくなった。 今回は、このPyCallを用いてPython用のライブラリのTensorFlowをRubyで動かしてみる。 今回の環境はWindows10, Ruby2.4, Python3.6を用いた。 PyCallのインストール PyCallを使用するにはPythonをインストールする必要がある。(すでにインストール済みの場合は必要ない) インストール方法はなんでも良いが、公式のWebページのダウンロードリンクからインストーラーをダウンロードしてインストールす…(続く)