投稿

ラベル(Language)が付いた投稿を表示しています

たまに掃除は必要!熱暴走…

イメージ
 そんなに暑くないのに… 本日、午前中にオンラインで打合せをしていると、突然マシンがダウン。 一瞬、停電か?と思ったもののディスプレイの電源は入っている。 あれっ?と思い、すぐさまノートで打合せを継続。 その間に、再度マシンの電源を投入。 問題なく起動する。 でも、CPU温度がたまたま目に入り、95℃を超えて徐々に上昇していく。 105℃あたりで再度マシンダウン。 これは、熱暴走によるダウンの可能性が高い。 以前、CPUをRyzen7→9にした頃は、60℃〜70℃程度だった記憶がある。 本当はGW中にSSDの載せ替えを行う予定だったけれど、忙しくて先延ばしにしていた。 その時やっていれば、多分掃除もしただろうに…。 ということで、午後からマシンを解体し、掃除をすることに。 ケース本体のFANはホコリがかなり溜まっている。 GPUのFANは問題ない。 電源とCPU FANはひどい。 一旦、CPU FANを取り外し、きれいにする。ついでにCPUグリスも塗り直しセット。 動作確認すると、投入直後で40℃台。 そりゃ、熱暴走も起こすわけだ。 せっかくバラしたので、SSDの載せ替えを実施。 OSは500GBで、ユーザ領域(/home)は1TBを使用しているもののAIのmodelをいくつも落としていたり、DockerのImageが多種置いてあるため、結構容量を食っている。 今回、2TBのSSD( Hanye SSD ¥17,800- で入手済)を用意してあるので、 1TB→2TB, 500GB→1TBと玉突きで移動させることを計画していたので実施する。 本当は、ddコマンドで移すつもりだったのだけれど、3月にお客さんのところで使いそうだったので、 ORICOのクローン機能付SSDアダプタ を入手済。 裸族のSSD版ですね…。1万円程度の品です。 これに、新品のSSDとこれまでの1TBのSSDを差し込んでクローン開始。 そこそこ時間はかかるものの、放置でOK。 ただ、HanyeのSSDについているヒートシンクが引っかかるため、一旦取り外してクローン後取り付ける必要があった。 続いて、500GB→先程の1TBに書き込み。 ただ、1TB(samsungの980pro)が、先程のクローンでかなり熱くなっていたため、速度低下が激しい感じ。1TB→2TBよりも時間がかかった感じ。 ...

JuliaLangを習得

イメージ
Julia言語って?  少し前から気になっていたので、少しずつマスターすることに。 MITで2010年少し前に発表されていて、2012年に公開。 まだ、若い言語ですね…。 で、どんな言語かと言うと動的型付け言語で、Pythonにすごく似ているので、知っていれば学習が楽。 JITで実行直前にコンパイルするため、初回はコンパイル分だけ遅めだけど、実行速度はC言語なみ。 しかも、Pythonのライブラリや、Cのライブラリを簡単に呼び出して使えるという変態ぶり。 MATLABやoctaveなんかと同様なベクトルや行列などが利用できるので、覚え直さなくていい。 数学処理や実験系の人は、楽なんじゃね?と思うわけです…。 高校の数学なんかも、こういったソフト使用すれば良いのになぁ。 本家は、 https://julialang.org 基本のインストールは、ダウンロード&展開して終了なので、超簡単。 PATHの通っているディレクトリにリンクを生成して完了。 $ ln -s /opt/julia-1.5.3/bin/julia ~/bin/ 基本的には、CUIで使用するけれど、Jupyter Notebookでも使える。 vscodeに拡張機能入れれば、vscode上でも実行できるというのが素敵。 起動すると、こんな派手なREPLという対話型環境が利用できるようになっている。 一応、本も探してみたけれ、知名度がまだ低いせいか、多くは出版されていない。 以下の本は、Pythonくらい知らないと、やや理解が難しいかもしれない。 網羅的に紹介されているけれど、詳細は本家サイトを参照というのが多め。 でも、はじめてJuliaを触る人には指針となるかな。 まあ、Julia自体、Helpも結構親切なので、なんとかなる。 例えば、パッケージPlotsを使おうとした例 julia> using Plots ERROR: ArgumentError: Package Plots not found in current path: - Run `import Pkg; Pkg.add("Plots")` to install the Plots package. などと表示してくれる。 そこで、 julia> import Pkg julia> Pkg....