Subversionリポジトリと連携できるgit-svn

 「Gitを使いたいが、中央リポジトリにはSubversionを使わざるを得ない」という場合も多いだろう。そのような状況で便利なのが、SubversionリポジトリとGitリポジトリの橋渡しをする「git-svn」である。git-svnを利用することで、SubversionリポジトリとGitのローカルリポジトリを同期させることが可能だ。本記事では、このgit-svnの活用方法を紹介する。

インテル コンパイラーでオープンソースソフトウェアをコンパイルしよう

 インテルの「インテル C++ コンパイラー」は高速なバイナリを生成するということで知られている。いっぽうWindowsの世界ではマイクロソフトのVisual C++が、LinuxではオープンソースのGCCが事実上標準のコンパイラになっており、多くのオープンソースソフトウェアはこれらのコンパイラでコンパイルされている。そのため、利用したいソフトウェアがインテル コンパイラーでコンパイルできるのか興味のある人も多いだろう。また、Visual C++やGCCでコンパイルされたものと比べ、どのくらいパフォーマンスが違うのかも気になるところだ。

 インテル C++ コンパイラーはVisual C++やGCCとの互換性を備えているものの、完全に同一というわけではない。そこで、有名なオープンソースソフトウェアについてインテル C++ コンパイラーでのコンパイルを行い、どの程度の修正でコンパイルが可能なのか、またそのパフォーマンスはどうなのか、調査してみよう。

パフォーマンス解析ツール「VTune」でアプリケーションを高速化

 作成したプログラムのパフォーマンスに問題がある場合、性能解析ツールを利用して問題点を分析するのが一般的だ。性能解析ツールには様々なものがあるが、その中でも高機能なものとしてインテルが開発する性能解析ツール「インテル VTune パフォーマンス・アナライザー」がある。

 本記事ではパフォーマンスの問題が発見されたプログラムを対象に、このインテル VTune パフォーマンス・アナライザーを使用して問題点の調査とパフォーマンスの改善を行う例を紹介する。

インテル コンパイラーでビルドする高速Firefox

 近年、そのパフォーマンス競争が盛んに行われている分野として、Webブラウザが挙げられる。たとえばSafari 4のベータ版は自らを「世界最高速」とうたうなど、それぞれのWebブラウザが自身の高速性をアピールしているが、それではWebブラウザのコンパイルにインテル コンパイラーを利用することでパフォーマンスを向上できないだろうか?

 そこでFirefoxの最新版であるFirefox 3.1 ベータ2について、Windows環境でインテル コンパイラーを使用してコンパイルし、そのパフォーマンスを調査してみた。

インテル コンパイラーの実力を測る――インテル コンパイラー版MySQLは本当に速いのか?

 インテルが開発している「インテル コンパイラー」は、インテルCPUに最適化された高速なバイナリを生成するということで知られており、Oracleなどパフォーマンスを求めるベンダーで採用されているほか、科学計算用アプリケーション、3Dグラフィックソフトなど、さまざまなソフトウェアのコンパイルに利用されている。

 しかし、「インテル コンパイラーはパフォーマンスが高い」とだけ言われても、なかなかピンと来ない人も多いのではないだろうか。そこで、インテル コンパイラーでコンパイルされたバイナリをベンチマークテストし、実際どの程度の性能向上が見込まれるのかを調べてみよう。

「インテル コンパイラー」で高速に動作するバイナリを作成しよう

 インテルが開発している「インテルコンパイラー」は、インテルCPUに最適化された高速なバイナリを生成するということで知られている。そのため、大量の数値計算が必要とされるシミュレーションの分野や3D CGなどの画像処理、科学技術分野などのソフトウェアで多く採用されている。

 しかし、「インテルコンパイラーはパフォーマンスが高い」とだけ言われても、なかなかピンと来ない人も多いのではないだろうか。また、一般的なソフトウェアでも性能向上の恩恵に預かれるのかも興味深いところだろう。

 そこで本特集では、このインテル コンパイラーでコンパイルされたソフトウェアについてそのパフォーマンスを調査するとともに、インテル コンパイラーでのコンパイルテクニックや、性能解析ツール「インテル VTune パフォーマンス・アナライザー」を使ってパフォーマンスチューニングを行う方法なども解説する。

WindowsでのGit環境構築とその注意点

 もともとはLinuxカーネル用のバージョン管理システムとして開発されたこともあって、GitのWindowsサポートは若干遅れている。特に日本語環境で利用する場合は設定などに注意が必要だ。そこで本記事では、Windows環境でGitを利用する方法およびその設定方法、そしてGUIでGitの機能を利用できるツールについても紹介する。

分散バージョン管理システムGitの使い方入門

 バージョン管理システムと言うとSubversionやCVSが有名だが、近年急速にユーザーを増やしているバージョン管理システムに「Git がある。GitはLinuxカーネルの開発リーダーとして知られるLinus Torvalds氏が中心となって、Linuxカーネルの開発に使用する目的で開発した分散型バージョン管理システムである。2005年に開発が開始されて以来さまざまなプロジェクトでの採用が進み、現在ではPerl 5やRuby on Rails、Android、Wine、X.orgなど、有名な大規模プロジェクトで採用されるに至っている。

 本記事では、このGitを使用するのに必要な「分散型バージョン管理システム」の基本的な考え方を紹介するとともに、Gitの導入方法や基本的なGitの使い方について解説する。

分散バージョン管理システムGitを活用しよう

 近年急速にユーザーを増やしているバージョン管理システムに「Git」がある。GitはLinuxカーネルの開発リーダーとしても知られるLinus Torvalds氏らが、Linuxカーネルの開発に使用する目的で開発した分散型バージョン管理システムで、現在ではPerl 5やRuby on Rails、Android、Wine、X.orgなど、さまざまなプロジェクトで採用されている。

 本特集では、Gitを使用するのに必要な「分散型バージョン管理システム」の基本的な考え方を紹介するとともに、Gitの導入方法やWindows環境での利用方法、Subversionなどほかのバージョン管理システムとの連携など、Gitを活用するためのテクニックを紹介する。

コンパイラを変えるだけでパフォーマンス向上、インテル コンパイラーの実力を見る

 「よりパフォーマンスの高いプログラムを作成するにはアセンブラを駆使すべし」という話を聞いたことがある人も多いだろう。これは、C/C++言語で記述されたプログラムには冗長な部分があるため、ノウハウを持つプログラマがアセンブラでチューニングしたプログラムの方が高いパフォーマンスを得られる、ということであった。しかし、現在では必ずしもこのことは当てはまらなくなっている。その理由は、コンパイラの進化と、CPUおよびPCアーキテクチャの複雑化にある。

インテル謹製の数値演算ライブラリ「MKL」を使ってプログラムを高速化

 各種スケジューリング処理やシミュレーション、統計処理、デジタル制御や信号処理などの分野では、多次元行列演算や高速フーリエ変換(FFT)、線形計画法など、さまざまな数学的処理が必要とされる。これらの処理に対するアルゴリズムはほぼ完成されており、フリー/商用を問わず、すでに多数の計算ライブラリがリリースされている。その1つが、インテルが提供する「インテル マス・カーネル・ライブラリ」(Intel Math Karnel Library、以下MKL)だ。

マルチメディア処理から信号処理まで幅広く活用できる高速ライブラリ「IPP」

 インテル C++ コンパイラーに付属するライブラリの1つに「インテル インテグレーテッド・パフォーマンス・プリミティブ」(Integrated Performance Premitive、以下IPP)がある。IPPは動画や音声、画像などの処理に向けた関数を備えたライブラリなのだが、実際のところIPPがどのようなものなのか分からない方も多いだろう。そこで本記事では、IPPには何が含まれており、またどのような用途に使えるのか、紹介していこう。

オススメFirefox拡張 [12/1更新]

 Firefoxの魅力の1つに、豊富な“拡張”の存在がある。素の状態のFirefoxはIE 7やOperaといったライバルと比べてもそれほど高機能というわけではないが、拡張を追加することで自分好みのブラウザにカスタマイズすることが可能だ。ただし、Firefox拡張はMozilla.orgに登録されているものだけでも2000個以上あり、登録されていない拡張の中にも有用なものがたくさんあるので、自分のニーズにマッチする拡張を見つけるだけでも一苦労だ。そこでここでは、本サイトでこれまで紹介した Firefox拡張をまとめて紹介することにする。

iPhone対応Webサイト構築入門(後編)

 iPhoneに搭載されているWebブラウザ「Safari」は、WindowsやMac OS X向けのWebブラウザとほぼ同等の機能を備えている。そのため、PC向けに制作されたWebページはiPhoneでもPCで閲覧する場合とほぼ同じレイアウト・挙動で表示できる。しかし、iPhoneはPCに比べて画面サイズが小さいため、iPhone版Safariに向けた専用のレイアウト・機能を用意しておくと、iPhoneから利用した場合のユーザビリティが大幅に向上する。後編では、このような「iPhone専用ページ」の作成例を紹介する。

iPhone対応Webサイト構築入門(前編)

 iPhoneにはWebブラウザとしてMac OS X/Windows用のSafari(以下、PC版Safari)のサブセット版が搭載されている。iPhoneのSafariでは一般的なWebサイトのほとんどが閲覧可能だが、Appleが提供している「iPhone向けのWebサイトデザイン」に従ったデザインを施すことで、iPhoneで閲覧した際により操作しやすいWebサイトを構築できる。本記事では、このようなiPhone向けのWebサイトを作成するテクニックを紹介する。

最新Webブラウザに向けたWebサイト開発テクニック

 2008年になり、FirefoxやInternet Explorer、Operaといった主要Webブラウザが相次いでメジャーバージョンアップを行っている。また、SafariやGoogle Chromeといった新しいWebブラウザも登場した。ユーザーにとっては選択肢が増えて喜ばしいところだが、Web開発者にとっては検証すべき対象が増えることになり、頭を抱えたくなる人も多いのではないだろうか。