粒度(粒状性とも呼ばれる)とは、物質やシステムが、識別可能な断片、すなわち「顆粒」や「粒」 (比喩的に)から構成されている度合いのことである。これは、より大きな実体が細分化されている度合い、あるいは、識別不可能な小さな実体のグループが結合して、より大きな識別可能な実体を形成している度合いを指す場合がある。
粗粒材料または粗粒システムは、細粒材料または細粒システムよりも、個々の構成要素の数が少なく、かつ大きい。
粒度、粗さ、細かさといった概念は相対的なものであり、システムやシステムの説明を比較する際に用いられます。粒度が細かくなる例としては、国連加盟国の一覧、それらの国々のすべての州/県の一覧、それらの州のすべての都市の一覧などが挙げられます。
システムの詳細な記述とは、そのシステムの低レベルかつ詳細な網羅的なモデルのことです。粗視化された記述とは、この詳細な部分の一部を平滑化または平均化したモデルのことです。詳細な記述を低解像度の粗視化モデルに置き換えることを粗視化と呼びます。(例えば、熱力学第二法則を参照してください。)
分子動力学において、粗視化とは、生体分子の原子レベルの記述を、微細な詳細を平均化または平滑化する低解像度の粗視化モデルに置き換えることである。
脂質膜やタンパク質など、多くの生物学的プロセスにとって重要な、より長い時間スケールおよび長さスケールのダイナミクスを調査するために、粗視化モデルが開発されてきた。[ 1 ]これらの概念は、生体分子だけでなく無機分子にも適用される。
粗視化によって、2つの原子間の振動モードなどの特定の自由度が除去されたり、2つの原子が単一の粒子として表現されたりすることがあります。システムを粗視化できる範囲は、再現したい動的特性と構造特性の精度によって決まります。この現代的な研究分野はまだ黎明期にあり、生物学的モデリングでは広く用いられていますが、その背後にある解析理論は十分に理解されていません。
並列コンピューティングにおいて、粒度とは、通信量に対する計算量の比率、すなわち、計算量と通信量の比率を意味する。 [ 2 ]
細粒度並列処理とは、個々のタスクのコードサイズと実行時間が比較的小さいことを意味します。データは、1ワードまたは数ワードのメモリ単位で、プロセッサ間で頻繁に転送されます。粗粒度並列処理はその逆で、大量の計算処理の後、データがまれにしか通信されません。
粒度が細かいほど並列処理の可能性が高まり、高速化につながりますが、同期と通信のオーバーヘッドも大きくなります。[ 3 ]粒度分解器も存在し、正確な粒度レベルを決定するために理解することが重要です。[ 4 ]
並列処理の性能を最大限に引き出すには、負荷と通信オーバーヘッドの最適なバランスを見つける必要があります。粒度が細かすぎると、通信オーバーヘッドの増加によって性能が低下する可能性があります。一方、粒度が粗すぎると、負荷の不均衡によって性能が低下する可能性があります。
再構成可能コンピューティングおよびスーパーコンピューティングにおいて、これらの用語はデータパスの幅を指します。FPGAの構成可能ロジックブロック(CLB)などの約1ビット幅の処理要素を使用することは、きめ細かいコンピューティングまたはきめ細かい再構成性と呼ばれます。一方、マイクロプロセッサCPUや再構成可能データパスアレイ( rDPA )内のデータストリーム駆動型データパスユニット(DPU)などの32ビット幅のリソースといった広いデータパスを使用することは、粗粒度コンピューティングまたは粗粒度再構成性と呼ばれます。
データの粒度とは、データフィールドが細分化されるサイズのことを指します。例えば、郵便番号は、粗い粒度で単一のフィールドとして記録することができます。
または、より細かい粒度で、複数のフィールドとして:
あるいはさらに細かい粒度:
粒度を細かくすると、データの入力と保存にオーバーヘッドが発生します。これは、オブジェクト指向プログラミングではオブジェクトとメソッドの数が増えること、手続き型プログラミングや並列コンピューティング環境ではサブルーチン呼び出しが増えることとして現れます。しかし、必要に応じて各データフィールドを個別に処理できるため、データ処理の柔軟性が向上するという利点もあります。粒度が細かすぎることによるパフォーマンスの問題は、スケーラビリティが問題になるまで顕在化しない場合があります。
データベース設計やデータウェアハウス設計において、データ粒度は、行(レコードとも呼ばれる)を一意にするテーブル内の列の最小の組み合わせを指す場合もある。[ 5 ]