今日、どのプログラムに従ってコンピューティングが考慮されていないという事実にもかかわらず、コンピューティングの開始以来の大きな問題のXNUMXつは、 メモリ管理。 論理的には、リンクされているテーブルの数に関係なく、プログラムがXNUMXレコードのデータベースで情報を検索するのと同じではないため、複数のテーブルを含む複数のテーブルのデータベースにアクセスする必要があります。それぞれ百万レコード。
後者は、今日では高度に最適化されたクエリを作成して、時間がかかりすぎないようにする必要があることを意味します。これにより、ユーザーエクスペリエンスがひどくなります。 からの何百万ものレコードのデータベースへのこのタイプのクエリでより高い流動性を達成しようとすること マサチューセッツ工科大学(MIT) 作成されました ミルク、テストによると、一般的なアルゴリズムでXNUMX倍の速度に達することができる新しいプログラミング言語。
あなたがコメントするように ウラジミール・キリアンスキー、MITの電気工学およびコンピュータサイエンスの博士課程の学生:
まるで、スプーン一杯のシリアルが必要になるたびに、冷蔵庫とミルクのカートンを開き、大さじXNUMX杯のミルクを注ぎ、カートンを閉じて冷蔵庫に戻します。
局所性の原則は、今日のほとんどのメモリチップの管理において重要な役割を果たします。 これは基本的に、プログラムは、異なるメモリパッチに格納された他のデータが必要であると想定する必要があることを意味します。 ビッグデータの場合、これが常に当てはまるとは限りません。 この問題を解決しようとすると ミルクは開発者がメモリを効率的に管理することを可能にします、特にデータをほとんど使用しないプログラムでは、これらは散在しています。
Milkで開発されたプログラムでは、カーネルがデータを必要とする場合、 メインメモリで検索する代わりに、ローカルに保存されている要素のアドレスにフォールバックします。 このように、システムは必要なデータを検索するためにリソースを消費するだけで、効率的に取得できます。 MIT自身が実施したテストによると、Milkで作成されたプログラムは通常 最大XNUMX倍高速 他の言語で開発されたものよりも。
詳細情報: コンピューターワールド