RAMレイテンシ計算機
メモリキットのCASレイテンシとクロックを、実際の時間に直します。DDR4-3200として売られる1600 MHzのCL16なら、最初のワードが届くまで10 nsです。サイクル数も速度も違うキットを、同じ物差しで比べられます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- CASレイテンシ
- 16
- クロック(MHz)
- 1,600
- クロック周期(ns)
- 0.625
- 最初のワードのレイテンシ(ns)
- 10
真の RAM レイテンシとは、列アドレスストローブの後に DRAM バーストの先頭ワードが利用可能になるまでのナノ秒単位の時間です。モジュールのシールや通販ページは CAS レイテンシを整数のクロックサイクル数としてメガヘルツのクロック速度の横に掲げますが、この二つの数字はサイクルを時間へ換算するまで、応答性を実際に支配する遅れを隠します。CAS タイミングと厳密に正の DRAM クロックをメガヘルツで入力してください。
先頭ワード RAM レイテンシとは何か、CAS がナノ秒になる仕組み
先頭ワード RAM レイテンシは列アクセス遅延です。有効な列アドレスから DQ バス上の最初のデータビートまでに何ナノ秒かかるかを示します。JEDEC タイミング表はその遅れを CAS レイテンシ、つまり DRAM クロックサイクルの整数として、メガヘルツのクロック周波数の横に印刷します。
サイクルは時間ではありません。同じ CL の二つのキットでもクロックが違えば体感は変わり、CL が違っても速いクロックが周期を十分短くすれば余分なサイクルを相殺して同じに感じることがあります。換算は一回の除算です。 ナノ秒のクロック周期 tCK はメガヘルツのクロックで 1000 を割った値です。
1 メガヘルツは毎秒 100 万サイクル、1 ナノ秒は 10 億分の 1 秒だからです。その周期に CAS サイクル数を掛けるとナノ秒の先頭ワードレイテンシ tCL になります。
計算例:コマンドクロックが 1600 MHz で DDR4-3200 として売られる DDR4 モジュール、CL16 では tCK は 1000/1600 = 0.625 ns、先頭ワードレイテンシは 16 × 0.625 = 10 ns です。同じ CL16 を 2000 MHz クロック、DDR4-4000 にすると 8 ns に下がります。
入力契約、DDR クロックと公称データレート、エラー
数値文字列は解析されます。クロックは厳密に正でなければなりません。CAS レイテンシは非負の有限数でなければならず、負のサイクル数は拒否されます。
重要:DDR4-3200 や DDR5-6000 のような公称 DDR 名は毎秒メガトランスファーのデータレートであり、コマンドクロックではありません。DDR はクロックあたり二回転送するので、メガヘルツのクロックは MT/s 指標の半分です。DDR4-3200 なら 1600、DDR5-6000 なら 3000 を入れてください。
本計算機は tRCD、tRP、tRAS、bank-group ギャップ、コマンド間遅延を折り込みません。それらの余分なクロックはフルランダムアクセス経路に属し、先頭ワードの列レイテンシには属しません。
RAM レイテンシ計算機が実際に役立つ場面
PC 自作者は、二つのキットの価格が近く店のページが CL とメガヘルツ風の速度しか印刷していないときに RAM レイテンシ計算機を使います。両方をナノ秒へ換算すれば、遅いキットの締められた CAS が本当に勝つかが分かります。オーバークロッカーとメモリチューナーは BIOS 変更のたびに同じ恒等式を回します。
クロックを上げて CL を据え置けば先頭ワードレイテンシは下がり、高いクロックで安定させるために CL を緩めれば、正味ナノ秒が改善したかを直ちに見られます。システムインテグレータとサーバ購入者は表計算を開かずに JEDEC ビンと EXPO または XMP プロファイルを比較します。
レビューサイトとアフィリエイト表は SPD ダンプから真のレイテンシ列を作り、読者がマーケティング周波数の横の生 CL に惑わされないようにします。検証失敗は残高を消費しません。
活用例
購入前に DIMM キットを比較する
各キットの CAS レイテンシとコマンドクロックを先頭ワードのナノ秒へ換算し、遅いスティックの締まった CL を速いスティックの緩い CL と順位付けします。
XMP、EXPO、手動タイミングを詰める
BIOS でクロックまたは CL を変えるたびに先頭ワードレイテンシを再計算し、ナノ秒の数値が実際に改善したプロファイルだけ残します。
サーバとワークステーションの JEDEC ビン
登録 DIMM の速度ビンと JEDEC 表を、公称メガトランスファーレートだけでなく真の列アクセス時間で並べます。
よくある質問
DDR4-3200 は 3200 MHz と 1600 MHz のどちらで入れるべきですか?
公称データレートではなくコマンドクロックを入れてください。DDR はクロックあたり二回転送するので、DDR4-3200 は 1600 MHz、DDR5-6000 は 3000 MHz です。
クロック速度がゼロまたは負だとどうなりますか?
非正のクロック速度は周期を未定義にするため、計算機は拒否し呼び出しは課金されません。
先頭ワードレイテンシはフルランダムアクセスレイテンシと同じですか?
フルランダムアクセスは tRCD、tRP、tRAS など、本計算機が含めない他のバンクタイミングも待ちます。
CLも速度も違う2つのRAMキットはどう比べますか?
両方をナノ秒に換算して比べてください。クロック1600 MHzのCL16は10 ns、同じCL16でも2000 MHz(DDR4-4000)なら8 nsで、後者のほうが早く最初のワードを届けます。
CASの数値が大きいほど、必ず遅いメモリですか?
いいえ、そうとは限りません。CASは時間ではなくクロックのサイクル数です。クロックが速いと1サイクルが短くなるため、サイクル数が多いキットでも、遅いクロックのキットと同じかそれ以上に速くなることがあります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/dev/ram-latency \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"cas_latency":16,"clock_mhz":1600}'const res = await fetch("https://api.kit.forhosting.com/dev/ram-latency", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"cas_latency": 16,
"clock_mhz": 1600
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/ram-latency",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"cas_latency": 16,
"clock_mhz": 1600
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/ram-latency", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"cas_latency":16,"clock_mhz":1600}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"cas_latency":16,"clock_mhz":1600}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/ram-latency", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"cas_latency": 16,
"clock_mhz": 1600
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.ram_latency",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
本 RAM レイテンシ計算機は先頭ワードの恒等式 t_ns が CAS に千を掛けメガヘルツのクロックで割ったものを適用し、DIMM キット、XMP プロファイル、JEDEC ビンの比較に使う列アクセス遅延を返します。ゼロまたは負のクロックは周期が未定義になるため invalid_input として拒否されます。
先頭ワード RAM レイテンシとは何か、CAS がナノ秒になる仕組み
すなわち t_ns は cas_latency に 1000 を掛け clock_mhz で割ったものです。本エンドポイントは周期と先頭ワード時間の両方を返すので、比較表が見せるナノ秒の見出しだけでなく算術そのものを監査できます。
入力契約、DDR クロックと公称データレート、エラー
有限な必須数値を二つ含む JSON を送ってください。cas_latency はモジュールまたは SPD に CL として印刷された CAS サイクル数、clock_mhz はメガヘルツの DRAM コマンドクロックです。サイクル数には別名 cas、cl、cas_cl を受け付け、クロックには clock_speed、frequency、mhz、clock を受け付けます。ゼロまたは負の周波数は周期 1000/f を未定義または負にするので、タスクは clock_mhz を指名して invalid_input で失敗し、課金されません。欠落または非有限のフィールドも同様に失敗します。成功時本体は cas_latency と clock_mhz をエコーし、clock_period_ns を tCK として返し、first_word_latency_ns を主結果として返し、式 t_ns = cas_latency * 1000 / clock_mhz を再掲します。clock_mhz に 3200 を貼ると真の先頭ワードレイテンシの半分になります。
RAM レイテンシ計算機が実際に役立つ場面
ファームウェアメモと立ち上げスクリプトは丸めたナノ秒フィールドをテストに固定し、clock_mhz が DDR データレートではなくコマンドクロックであることを文書化します。リクエストを小さく保ち、非正のクロックを端で拒否すれば、データシートパーサを自前で立てずに購入スクリプト、オーバークロック記録、エッジワーカー向けの再現可能な先頭ワードレイテンシが得られます。
技術的な質問
CAS とクロック速度から先頭ワード RAM レイテンシはどう計算しますか。
ナノ秒の先頭ワードレイテンシは cas_latency × 1000 / clock_mhz です。cas_latency はクロックサイクルの CL、clock_mhz はメガヘルツの DRAM コマンドクロックです。クロック周期 tCK は 1000 / clock_mhz ナノ秒です。
RAM レイテンシ計算機の料金はいくらですか。
ブラウザツールは無料です。API 要求は成功呼び出しあたり $0.002 の前払い KIT 残高を使い、無効入力は課金されません。