Raspberry PiにRAMを追加することはできますか?


26

Raspberry PiにRAMを追加することはできますか?



2
タグには、「pi-2」と書かれていますが、これは以前のpisとは異なるハードウェアを備えており、ラムチップは実際には分離されています。私はより良いタグを反映して、それを元に戻すと、あなたはPI 2についてだけ話されていない場合は、タグを削除すること自由に感じにあなたの質問を更新しました
アダム・デイビス

2
@ Jacobm001その投稿が行われたときにPi 2はリリースされていなかったので、この質問は重複していないと思います。
pydsigner

@AdamDavisタイトルで明示的に言及されているはずです。それ以外の場合は、重複しています。
PNDA

え?そのため、必要に応じてコンテキストを埋めるために、個別の回答を許可することができます。
Braiam

回答:


29

いいえ。RAMをPiに追加する方法はありません。詳細については、raspberrypi.orgフォーラムでこの説明を参照してください。ただし、基本的にRAMとCPUは密接に、アクセス不能に接続されています。CPUチップの酸除去、顕微鏡の取り出し、マイクロメートルスケールのはんだごての追跡を開始する場合を除き、RAMを便利に追加できる物理的な方法はありません。


4
それらがどれほど「密接に接続されている」かを簡単に説明したものについては、こちらご覧ください
goldilocks

3
Pi 2には別個のRAMチップがあり、この質問のタグはPi 2用です。初期のPiバージョンでは答えは問題ありませんが、2に当てはまりますか?
アダムデイビス

3
私はそれを検討しています-それは確かに非常に信じがたいようです。RAMチップは、 168ボールSMDあり、そして私のサムネイルよりも少し小さいです。当然のことながら、古いものをオフにしたり、新しいものをオンにしようとしたりすることは、決して面白くないと言えます。joanの答えは、おそらくこのユースケースをより正確にカバーしています- チップを物理的に処理できたとしても、違いはありません。各SoCはすでに上限に達しています。
goobering

3
SSDを追加して、スワップとして使用できます。次の最高のもの。
ダースEgregious

2
メモリチップを取り外すことは確かに「楽しい」ことではありませんが、適切な機器とスキルで実行できるはずです(pi1よりもpi2の方が簡単です)。本当の問題は、SoCがこれ以上大きなものをサポートできないことです。
ピーターグリーン

12

いや

通常、各Piモデルには、サポートされている最大量のRAMが既に取り付けられています。

初期のモデルBの一部には256MBしかなく、代わりに512MBが必要でした。ただし、ボードを破壊せずにRAMチップを更新する方法はありません(特別な研究所がない限り)。


これはPi 3にも当てはまりますか?
PythonNut

@PythonNutはい、Pi2とPi3には既に最大1GBがインストールされています。
ジョアン

ここでエッジケースを判断するのではなく、Pi3の現在の1GBが十分でなく、他のPi3と負荷を共有できない場合、おそらくそれを間違っているのでしょう
...-WorseDoughnut

いいえ、あなたが何をしようとしているかに依存します。たとえば、一部のサーバーアプリケーションで使用したい場合、RAMを追加するのは普通のことです。
アレクシスDufrenoy

5

256MBのPiでは、理論的にはチップを512MBのものと交換することは可能ですが、簡単ではありません。PoPスタックを慎重に加熱してから、何らかの方法でプロセッサをRAMチップから分離する必要があります。次に、古いボールの混乱をクリーンアップし、新しいラムチップをはんだ付けします。

ファームウェアが対処するかどうかという問題もあります.512MBモデルにはSoCのOTPに256MBモデルと異なるIDコードが焼き付けられており、物事が一致しない場合にブートコードが適切に機能するかどうかはわかりません。

512MB BCM2835ベースのpisでは、アップグレードはできません。メモリコントローラーは1GBをサポートするように設計されていますが、そのサイズで正常に動作しなくなるバグがありました。

Raspberry pi 2 Mdoel Bおよびraspberry pi 3 model B 1GBが限界であるため、Socのバス構造とメモリコントローラーの設計は、それ以上サポートしていません。

512MB BCM2837ベースのPi(Raspberry pi 3モデルAなど)が表示される場合、理論的には1GBへのアップグレードが可能になると予想されますが、再びBGAの修正が必要になります(ただし、PoPの楽しさはありません)ファームウェアの問題があるかどうかわかりません。


3

SoCがより多くをサポートできる場合、他の人が指摘したように、設計者はおそらくより多くのメモリを組み込んでいたでしょ。しかし、もっと重要な理由があります:コスト管理。

その種の部品の512Mと1Gの価格差は1米ドル未満です。両方とも約5ドルです。そのカテゴリの8G ICでも約14ドルです。それほど単純ではありません。

USD40の3つの小売店。そのBOMはおそらく15ドル未満であるため、1ドルを追加しても、小売価格に大きな影響を与えます。また、より高い価格でより高価なpiを購入する人もいますが、2つのバージョンを使用可能にするだけでコスト(設計、テスト、配布、在庫など)が増加し、代わりに40ドルの1Gモデルを45ドルで販売する必要があります。あなたと私は気にしないかもしれませんが、それはPiが主に目指している教育市場に大きな違いをもたらします。

また、予算が限られている場合、何を含めるかを決定する必要があります。私は、1つは、Wi-FiとBTを3に搭載することについて、余分なメモリを使用するよりもずっと幸せです。あなたの経験はさまざまですが、これまでメモリを必要としたことはありませんでしたが、piを使用してWiFiが必要だったため、WiFiドングルで5ドル節約するのが好きな選択肢でした。

それ以上のメモリが絶対に必要な場合、他の(より高価な)オプションがあります!


2

RAMをラズベリーパイに追加することはできませんが、ラズベリーパイクラスターは別のものです

チェック:http : //www.zdnet.com/article/build-your-own-supercomputer-out-of-raspberry-pi-boards/

更新:

誰かがリクエストしたので、上記のリンクを要約します。私自身は詳細に精通していませんが、ラズベリーパイを「接続」することは可能だと思われます。

「キーパートは、自家製コンピューターの標準的なスーパーコンピューターベンチマークであるHigh Performance Linpack(HPL)を実行し、32個のBroadcom BCM2708 ARM11プロセッサーを実行するRPiClusterが10.13のHPLピークパフォーマンスで1GHzおよび14.6GBの使用可能なRAMであることがわかりましたGFLOPS」


Raspberry Piへようこそ!これは理論的には質問に回答するかもしれませんが(実際、回答は質問の正接にすぎません)、回答の重要な部分をここに含め、参照用のリンクを提供することが望ましいでしょう
ガニマ

2

より多くのメモリが必要なだけでLinuxディストリビューションを実行する場合は、スワップを拡大することができます。これについては、http: //www.thegeekstuff.com/2010/08/how-to-add-swap-space/の指示に従ってください。Raspでswapfileを見つけました/var/swapが、これはわずか100MBです。それで、私はそれをより大きなものに置き換えました。現在、Raspには1 GBのRAMと4 GBのスワップがあります。

スワップが本当に必要な場合、速度は低下します。通常の操作では、これはパフォーマンスに影響を与えません。ここを見てみましょうen.wikipedia.org/wiki/Swappiness詳細については。このソリューションは、短時間またはメモリのピーク時にメモリが必要な場合に使用する必要があります。SSDにスワップすると、SSDの寿命が短くなります。スワップは、通常の操作で使用するためにメモリを拡張することを意図したものではないことを思い出してください。

より多くのRAMと速度を恒久的に探す場合は、http://www.digitaltrends.com/computing/c2-offers-competitive-specs-to-raspberry-pi/をご覧ください


ここでの以下の議論に関して、ハードウェアを変更するよりもスワップを好むいくつかの使用例を示します。

  1. ターゲットでソフトウェアをビルドします。ここには2つの可能性があります。

    1. 単一のコアを使用して、必要なメモリの量を減らします。私の例では、これは9時間45分の経過時間で370 MBのピークメモリ使用量につながります。

    2. 並列ビルドを使用します。私の例では、4時間30分経過すると1400 MBのピークメモリ使用量になります。しかし、この時間のほぼ98%で、使用されるメモリは1024 MB未満です。

  2. 初期化プロセスが重いアプリケーション:アプリケーションの主要部分は既存のRAMよりも少なくて済みますが、初期化ルーチン(プログラムのライフタイム中に1回だけ発生します)にはいくつかの大きなメモリピークがあり、スワップは適切な方法ですメモリの必要性を処理します。

ハードウェア要件を調べるには、次を使用できます。

/usr/bin/time -v <program invocation>

これはあなたにこれらの情報を提供します

Command being timed: "program invocation"
User time (seconds): 33164.02
System time (seconds): 1560.20
Percent of CPU this job got: 98%
Elapsed (wall clock) time (h:mm:ss or m:ss): 9:45:12
Average shared text size (kbytes): 0
Average unshared data size (kbytes): 0
Average stack size (kbytes): 0
Average total size (kbytes): 0
Maximum resident set size (kbytes): 379092
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 354
Minor (reclaiming a frame) page faults: 47740772
Voluntary context switches: 1049855
Involuntary context switches: 482091
Swaps: 0
File system inputs: 170240
File system outputs: 3477064
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0

1
RPiはすでに低速です。スワップさせると、さらに遅くなります。
トーマスウェラー

これまでのところ。ただし、場合によっては、速度よりもメモリの方が重要です。たとえば、私にとっては、十分なメモリがないため、大量のソースをビルドしなければなりません。そこで、スワップを拡大します。そして、スワップが本当に必要な場合にのみ速度が低下します。通常の操作では、これはパフォーマンスに影響を与えません。ここを見てみましょうen.wikipedia.org/wiki/Swappiness詳細については。
Alex44

RPi自体を本当に構築する必要がありますか?より高速なシステムでクロスコンパイルしたくないですか?
トーマスウェラー

最後のアプリケーションのパフォーマンスの問題です。リアルタイムアプリケーションの場合はcrossbuild-essential-armel、ターゲットデバイスのシェルフのコンパイラまたはコンパイラを使用するのとは異なります。ただし、ビルドのパフォーマンスに関しては、もちろんクロスビルドを行うのが理にかなっています。
Alex44

これは良い答えです-あなたは私に主張をしました、そして、私はスワップのファンではありません。それは質問に対する正確な答えではないですが、それはおそらく...他のいくつかのより多くの人々に、より実用的な価値を持っている
ゴルディロックス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.