製品・サービス > スーパーコンピューティング > HarmonyCalc > 特長
HarmonyCalc/特長

■開発・移植が簡単な並列処理ミドルウェアです。

HarmonyCalcを使うと、既存のアプリケーションをとても簡単に並列化することができます。

複数の開発言語に
対応
HarmonyCalcはWindows SDKの仕様に準拠したDLLとして提供されており、ほとんどの開発言語で利用することができます。またいくつかの開発言語については、より自然な形で使うことができるよう、専用のインタフェースも付属しています。使い慣れた言語で並列プログラムを開発することができます。
Windowsベース 従来のPCクラスタの多くはLinuxをベースにしていました。これに対してHarmonyCalcは、より広く使われているWindowsをベースにしています。そのためLinuxに比べて豊富なソフトウェア資産を活用することができますし、プログラマの確保もしやすくなります。
DLL形式のライブラリ HarmonyCalcはDLL形式で提供されていますので、既存のアプリケーションを実行形式からDLL形式に書き換える煩わしさがありません。またアプリケーションを起動させる際に行われる初期化処理(二重起動防止処理、環境チェック処理、ライセンス確認処理など)も書き直す必要がなく、そのまま利用することができます。
クラスタシミュレータ
[特許取得済み]
付属の「クラスタシミュレータ」を使うと、PCクラスタを実際に用意しなくても並列アプリケーションを開発することができます。そのためPCクラスタを導入する前から、先行的にアプリケーションの開発に着手することができます。またチーム開発においても、プログラマの数だけPCクラスタを用意する必要がありません。さらに1台のパソコンでシステム全体の開発ができますので、開発言語に付属する高機能なクロスデバッガを活用することができ、効率的なテストやデバッグが可能です。
高度なプログラミング
知識が不要
[特許取得済み]
HarmonyCalcでは、スケジューリング、ノードの状態管理、待ちや同期、スレッド作成やメッセージ送受信といった処理を一切プログラムに書かなくても並列処理を実現することができます。従来の並列プログラミングでは、本来行うべき処理だけでなく、並列化に伴う付加的な処理を多く実装しなければならず、そのために必要な知識を習得しなければなりませんでした。HarmonyCalcなら、本来行うべき処理の実装に専念することができます。
個々のパソコンの管理が
不要
[特許取得済み]
個々のパソコンの管理はHarmonyCalcが行いますので、パソコンの台数や状態を意識せずに並列アプリケーションを開発することができます。HarmonyCalcに対応するプログラムは、WindowsベースのあらゆるPCクラスタで動作します。開発した並列プログラムをバッケージ製品として多くのユーザに配布することも可能です。
完全イベントドリブン
プログラミング
[特許取得済み]
HarmonyCalc独自の「セッションモデル」によって、完全にイベントドリブンなコードだけで並列処理を実装することができ、プログラムが読みやすくなります。従来の並列プログラムでは、並列処理の前半はシーケンシャルなコードとして、後半はイベントドリブンなコードとして書かなければなりませんでした。そのため処理の前半と後半が、プログラムのまったく別の箇所に、まったく異なる形式で書かれることになりました。これに対してHarmonyCalcでは、処理の前半と後半を同じ形式で並べて書くことができます。
豊富なサンプル
プログラム
製品版には、それぞれの開発言語による、豊富なサンプルプログラムが付属しています。それぞれのサンプルについて、並列化する前のプログラム、クラスタシミュレータで動作するプログラム、マルチコアパソコンで動作するプログラム、PCクラスタで動作するプログラムの4種類が用意されていますから、これらを見比べて使い方を簡単にマスタすることができます。

■さまざまな使い方ができる並列処理ミドルウェアです。

HarmonyCalcは、さまざまなプログラムに対応することのできる高いフレキシビリティを備えています。

さまざまな分散処理
手順に対応
[特許取得済み]
独自の「セッションモデル」では、並列処理の手順を簡単にカスタマイズすることができます。一部のデータを残しておいて使い回したい、一括配布するデータと個別配布するデータを使い分けたい、処理を行うパソコンの台数に上限を設けたい、ファイルもメモリブロックも扱いたい……など、さまざまな処理手順のプログラムを同じような形式で書くことができます。ライブラリ全体を並列化するような場合でも、形式の揃った読みやすいプログラムが書けます。
OEM提供に好適 HarmonyCalcは、エラーの時を含めて固有のウィンドウを一切表示させずに動作します。既存のユーザインタフェースとのデザインの違いや、国語・言葉遣いの違いを気にする必要がありませんので、OEM組み込みの用途に最適です。プログラムのインストールも、プログラム本体の他にHarmonyCalcのDLLをコピーするだけです。
割り込み処理の
サポート
[特許取得済み]
処理完了率を取得する機能や、処理を中断させる機能もサポートされています。HarmonyCalcの機能を1回呼び出すだけで、必要な問い合わせや要求がそれぞれのパソコンに自動的に分配されます。処理を中断させる場合、不要になった中間データの消去も自動的に行われます。そのため複雑なプログラミングが不要となり、ユーザからのコマンドによってリアルタイムに動作する、対話型のアプリケーションの移植も簡単にできます。
ハードウェア環境に
非依存
[特許出願済み]
マルチCPU(コア)のパソコン、一体型のPCクラスタ、ブレードパソコンのクラスタリング、グリッドコンピューティングなど、多様なハードウェア構成に対応します。動作環境を変えた時の互換性も完全に確保し、HarmonyCalc対応の並列プログラムは、パソコンの台数や性能、ネットワーク構成への依存性がなくなります。ですから既存のパソコンを使い、初期投資を抑えて導入した後、高性能のパソコンに移行したり、パソコンの台数を増やしたりすることが可能です。また並列プログラムのパッケージ配布も可能です。
マルチユーザ 1台のPCクラスタで、16人までのユーザが同時にプログラムを動作させることができます。PCクラスタを多くのユーザで共有することが可能です。また多重にアプリケーションを動作させなければならないインターネットサービス用途でも、トランザクションごとに異なるユーザ番号を割り当て、HarmonyCalcを活用することができます。

■高い処理性能を引き出す並列処理ミドルウェアです。

HarmonyCalcは、PCクラスタの能力を引き出し、高い性能とスケーラビリティを実現します。

完全な上位互換性
[特許取得済み]
独自の「セッションモデル」では、アプリケーションの上位互換性が保証されます。そのためHarmonyCalcのバージョンアップに対し、アプリケーションを書き換えたり、コンパイルし直したりする必要がありません。HarmonyCalcのアルゴリズムが改善されて性能が向上すると、アプリケーションの性能も自動的に向上していきます。
大規模PCクラスタに
対応
HarmonyCalcバージョン4は、最大9,716個のノードで構成された大規模なPCクラスタを管理し、動作させることができます。本格的なスーパーコンピューティングにも耐える仕様です。
無制限のファイル
伝送容量
HarmonyCalcが扱うことのできるファイルの容量には制限がありません。4ギガバイトを越える巨大なファイルも問題なく扱うことができます。HarmonyCalcバージョン4は32ビットアプリケーションだけでなく、64ビットアプリケーションにも直接リンクすることができ、4ギガバイトを越える巨大なメモリブロックも扱うことができます。
高速のデータ伝送 ギガビットEthernetを使う場合、20メガバイト/秒以上の高速でデータを伝送することができます。このデータ伝送速度は、Windowsのファイルコピーの伝送速度とほぼ同じで、事実上の最高性能です。ネットワークの性能を遺憾なく引き出すHarmonyCalcの性能は、大容量のデータを扱う処理の高速化にも効果を発揮します。
ミリ秒オーダの
スケジューリング
個々のパソコンの稼働率を最大限に高めるアルゴリズムを採用しており、無駄のないスケジューリングを行います。またスケジューリングにかかる時間もわずかで、小規模のPCクラスタでは100ミリ秒以内、大規模のPCクラスタで細かくタスクを分割する場合でも、通常は数秒しかかかりません。インターネットサービスにも利用することのできる高い応答性を実現します。
ノードマネージャ PCクラスタの迅速な立ち上げと、能率的な運用に役立つ「ノードマネージャ」が付属しています。PCクラスタの立ち上げ・運用に必要な操作のほとんどを集中的に行うことのできるノードマネージャは、PCクラスタが稼動していない時間を最短に抑えます。

■導入しやすくコストを削減する並列処理ミドルウェアです。

HarmonyCalcは、並列化に伴う手間やコストアップを最小限に抑えます。

習得・開発が簡単 いかにLinuxが安価だといっても、Linuxを知っているプログラマを新たに採用したり、高い参加費を払って講習会に通ったりしなければならないのでは意味がありません。HarmonyCalcならWindowsを知っているだけで安心して使うことができます。またHarmonyCalcの体系は非常に簡単で、多くの方が数日で使い方をマスタしています。ひとたびHarmonyCalcの使い方を習得してしまえば、驚くほど能率的に、低コストで並列プログラムを量産することができます。
再利用可能な並列
プログラム
HarmonyCalcに対応した並列プログラムは、非常に読みやすく、再利用しやすいものです。またHarmonyCalcは、ライブラリの並列化にも適しています。一たびライブラリを並列化しておけば、いつでもプログラムに組み込み、低コストで高速処理を利用することができます。
オリジナル版とパソコン
クラスタ版が両立
[特許取得済み]
HarmonyCalcに対応した並列プログラムは、パソコンの台数やCPU(コア)の数に依存しません。そのためシングルCPU(コア)のパソコン、マルチコアCPU(コア)のパソコン、PCクラスタのいずれでも動作するプログラムを作ることができます。一つのプログラム製品のラインナップに、単独のパソコンで動作する「オリジナル版」と、PCクラスタで動作する「PCクラスタ版」を設けたとしても、両者の整合性の確保に手間がかかりません。
開発の無駄を避ける
サポートサービス
これまでの並列プログラミングでは、お客様の業務と並列処理の両方に詳しいプログラマを確保するのが常識でした。HarmonyCalcなら、お客様は並列処理の細かいテクニックに精通する必要がありません。弊社と代理店各社では、お客様の並列プログラミングをサポートする各種のサービスを用意しております。これらを活用していただければ、学習・教育や人員確保にかかるコストを大幅に節約することができます。

トップページへ
「スーパーコンピューティング」へ
「HarmonyCalc」へ
「HarmonyCalc/よくある質問」へ
「HarmonyCalc/既知の問題点」へ
「HarmonyCalc/ダウンロード」へ