- 投稿日:
主な変更点に関して個人的にざっくりまとめてみる。詳細は公式のリリースノートを確認すること。v18やv16と比べるとアップデートが多い気がする。個人的にはv12, v14並に嬉しいアップデートかも。特に単一バイナリのサポートとARM64版Windowsのサポートが強力だと思います。
権限モデルの追加
--experimental-permission
フラグを付けることでファイル システム操作、子プロセスの生成、ワーカー スレッドの作成など、プログラムの実行中に特定のリソースへのアクセスを制限できる様になった模様。
実験的機能であれば16のときにもあったと思うが、この時との違いは詳しく確認してない。参考程度にv18とlatestとのドキュメントリンクを置いておく。
- https://nodejs.org/api/permissions.html#process-based-permissions
- https://nodejs.org/docs/latest-v18.x/api/permissions.html#process-based-permissions
専用スレッドで実行されるカスタムESMローダーフックの追加
多分ESMを別スレッドで読み込むことでヒープ競合が起きなくなるのだと思うが、使ったことがないので詳細は不明。TypeScriptを使っている限り、まだまだCJSを使う機会が多く、ESMへの完全移行は先な気がするので放置で良さそう?誰か詳しい人教えて!
同期的になったimport.meta.resolve()
詳細不明なのでパス。以下の記事が参考になるかも?
V8エンジンのアップデート
Chromium 113の一部であるバージョン11.3に更新されたそうです。前回は 11.2 だったようですが、いつのバージョンに入ってたのかは未確認。
テストランナーが安定版になった
Test runnerがStableになり本番環境で使えるレベルとなった。Jestより貧弱な気しかしないが一度は試してみたいところです。
Ada 2.0の導入
URI解析のパフォーマンスが向上したほか、URLホスト名解析が楽になったっぽい?
単一実行バイナリの生成に対応
実験的な機能ですが単一実行バイナリの生成がサポートされた。リリースノートを読む限りNode.jsランタイムをバンドルすることで実現してそうなので、Electronみたいに巨大なバイナリができそうな気がする。興味深いので是非試してみたい機能。
https://nodejs.org/api/single-executable-applications.html
Web暗号化APIの互換性向上
恐らく主要なブラウザに実装されているWebCrypt実装を模倣したものが追加された?
https://github.com/nodejs/node/pull/46067
ARM64版Windowsのサポート
Node.jsの全機能がARM64版Windowsで動作するようになったとのこと。Surface Pro Xとかでも動くようになるものと思われる。単一実行バイナリの作成と合わせて嬉しい機能です。
WebAssembly System Interfaceインスタンス作成時にバージョン指定を必須に
new WASI()
でバージョン指定が必須になりました。
https://nodejs.org/api/wasi.html
https://github.com/nodejs/node/pull/47391
url.parse()
に無効なポート番号を持つURLを渡すと警告を出すように
次のようなURLを渡すと実行時に警告が出るようになりました。
url.parse('https://evil.com:.example.com');
url.parse('git+ssh://git@github.com:npm/npm');
https://github.com/nodejs/node/pull/45526
LTSスケジュール
20系がLTSに入るのは2023-10-24からです。
https://github.com/nodejs/release#release-schedule
- 投稿日:
ブートドライブの交換をする時に色々やったので、その記録です。メインはM2SSDの固着ネジの取りはずしです。
内容としてはCrucial P1 CT500P1SSD8JPをSolidigm P44 Pro SSDPFKKW020X7X1に更新しました。
既存SSDの抜去
交換するために既存のSSDを取り外す必要があったのですが、まずここでハマりました。何故かというと、ネジが固着してて回らないんですね…。そしてネジ穴が潰れて終わりました。しかし外せないと困るのでいくつか試してみました。
まずはネジすべり止め液。これを使えばネジ穴が潰れていてもたちまちネジが回るのだとか!
先端部が細くなっていて、ネジ穴だけに上手く差せそうですが実際はM2SSDのネジだと溢れました。ザラザラしてて取り除くのがやや面倒なのでマザボにはこぼさないほうがいいと思います。サラサラしてて割とドバッと出ます。
ネジすべり止め液を差してみたところ。SSDの基板に掛かっていますがとりあえず無事でした。結局これは効果がなく、次の手を探ることに…。
そこで見かけたのが、なめたネジはずし精密用 なめたネジはずし精密用ハンドル付M1~2.6 No.3610-N)。これなら基板にダメージを与えずにネジを取り去れそうですが、近くに売っているところがなく断念しました。
次に浮かんだのがネジを外す道具として定評のあるネジザウルスです。ネジを掴んで回すのでネジ穴が潰れてても原理上問題ありません。ただ、背の低いM2SSDのネジを掴めるのかと、回してる時に基板をこすって壊さないかが心配でしたが、外せないとどうしようもないですし、試してみないことには解らないということもあり、一か八かの掛けで試してみることにしました。幸いこいつはヨドバシにあったのでその日のうちに買いに行きました。(翌日まで待つとかできない!
神戸に住んでるので頑張って梅田まで出張って買ってきました。(しかし、この後買い忘れに気づきもう一回行くハメに…
という訳でネジザウルスを買ってきました。
結果としてはM2SSDのネジの頭を掴むことができ、特に基板にダメージも与えずネジを外すことができたので良かったです。
ブートドライブのクローン
今使ってるマザボはM2SSDスロットが2つあり、片方がブートドライブになっているため、ドライブをクローンして新しいドライブをブートドライブとして使えるようにしていきます。残念ながらフリーのクローンソフトにめぼしいのがなかったのとDDコマンドを使ってまでやる気が出なかったので、かつてお世話になったAcronis True Imageの後継ソフトであるAcronis Cyber Protect Homeを頼ることにしました。
手順は簡単でツール → ディスクのクローンの作成を選び、表示されるウィザードに沿って進めるだけです。
日本語が怪しくてやや分かりづらいですが一番上のやつで行けました。
NVMeSSDからNVMeSSDへのクローンだったので体感30秒くらいで終わりました。
この後は新M2SSD抜去 → 元々差していたM2SSDを挿入 → 元々のブートM2SSDを抜去 → 新M2SSDに置換という手順で更新を完了しました。M2SSDの交換はPCケースを倒した状態でグラボも外してないと出来ないので、クローン作業との兼ね合いで結構面倒でした…。もう当分やりたくない作業です。
何はともあれブートドライブの容量を500GBから2TBに拡張できたのは良かったです。先日グラボを更新したのもあり、新鮮な気分です。
- 投稿日:
久々にPC構成を更新したので開封の儀的なやつです。前回のグラボ更新が2019/06/11だったので、およそ4年ぶりの更新です。更新理由はStable DiffusionなどのAIツールをローカルで使うためです。
更新内容
グラボ | |
---|---|
交換前 | ROG-STRIX-RTX2060-O6G-GAMING |
交換後 | ZOTAC GAMING GeForce RTX 4070 Ti Trinity OC |
グラボ開封の儀
以前はROG-STRIX-RTX2060-O6G-GAMINGを使っていたのですが、ROGは高いので今回は断念しました。低価格帯ではZOTACが馴染み深いのと、一番見た目が好みだったのでZOTAC GAMING GeForce RTX 4070 Ti Trinity OCを購入しました。
外箱。マザボの箱よりでかい気がします。
外箱を開けると内箱が出てきます。
内箱を開けるとセットアップCD。今どきのゲーミングPCで光学ドライブベイが付いてるのどれほどあるんですかね?ちなみにウチはないです(外付けは持ってますが)
内箱の中身。本体と付属品がついています。よほど手荒くしても壊れそうにない梱包が力強いですね。
付属品その1、サポートステイ。ケースの中に立てて支える感じのものです。接地部やグラボとの接触面にはゴムパッドがついており、振動や滑りを抑える構造になっています。高いだけあって、こういったグッズがついているのはありがたいですね。
付属品その2、電源ケーブル。PCIe電源3本を一本にまとめて12VHPWRに変換するやつです。流石にこれはついていて欲しかったので大分助かりました。
という訳で特に他に部品を買わずともすぐに使える最低限のパーツ一式が付いていて助かりました。
旧グラボとの比較
ROG-STRIX-RTX2060-O6G-GAMINGとの比較です。
サイズ感としては若干大きいくらいで余り変わりませんでした。
厚みもやや厚いくらい。
重量はやや軽い。今までサポートステイ無しで使ってきて何もなかったので、今回もいらないかなと思いました。
ベンチスコアも上がってますが、価格の割には上げ幅は少ないというか4Kとかではないのでこんなもんかなという感じです。
また今度Stable Diffusionのベンチマークも取ってColabとの差がどれほど出るか記事にしてみたいと思います。
交換時のトラブルとか
何事もなく交換ができたら良かったのですが、まぁそんなことはなく…。
起きたトラブルとしてはグラボからDPケーブルで2枚のモニタに繋いでいるのですが片方が映らなくなりました。原因は単純でASUSのグラボチューニングユーティリティGPU Tweakのせいでした。こいつをアンインストールしたら映るようになりました。
またフルプラグイン式の電源(Seasonic SSR-750FX)を使っているのですが、これはPCIeケーブルがポート分付属しておらず、純正品の販売もなかったのでアリエクでそれっぽいのを買って使っています。今のところは特に問題なく動いています。(まぁ通電するポジションさえあってれば基本は大丈夫でしょう…)
あとはPCIe電源を12VHPWRに繋ぐ時に2股の先を両方使っているのですが、これも今のところは問題ない感じです。まぁ使えるから二股になっているはずなので、行けるんじゃないかなと信じています。(ケーブルが耐えられるように作られてるなら燃えたりすることはないはずですし…)
- 投稿日:
最近重くなった人向け。フォルダーオプションを開いて、Office.comのファイルを表示するのチェックを外せば解消すると思います。多分
解消手順
- フォルダーオプションを開く
- Office.comのファイルを表示するのチェックを外す
- OKを押す
- 投稿日:
2023-05-04現在、無料枠では利用できない可能性があります。
Google ColaboratoryでStable Diffusionを動かす場合、無料と有料でどの程度変わるのか試してみたのでその結果。ざっくり4倍ほど変わるのかなというのが体感です。
レンダリング条件
今回は以下の設定で回した結果を比較します。
ベースとなるNotebookは以下を使っています。
https://gist.github.com/Lycolia/cb432ad1b1ce083482b5487c131b5d12/80a059931c538b10d55cf9fcbf82220f24e64653
設定値は以下です。ほぼデフォです。
設定 | 値 |
---|---|
Propmpt | (illustration:1.0), masterpiece, best quality, 1girl, solo, happy, smile, theater, (perspective:1.3), from below, (looking away:1.2), (from side:1.0), {{shot_hair}}, smile, bangs, shaggy, (brown hair:1.1), swept_bangs, thick_eyebrows, skin_fang, closed mouth, {{purple eyes}}, gray {{jacket}}, white shirt, glasses, {{small breasts}}, |
Negative Prompt | nsfw, (worst quality, low quality:1.4), (depth of field, blurry, bokeh:1.5), (greyscale, monochrome:1.0), multiple views, text, title, logo, signature, (tooth, lip, nose, 3d, realistic:1.0), dutch angle,(cropped:1.4), text, title, signature, logo, (loli:1.2), school satchel, pink, school bag, school uniform, from behind |
Model | AOM3A1B |
VAE | orangemix.vae.pt |
Sampleing method | Euler a |
Sampleing steps | 20 |
Width | 512px |
Height | 512px |
Batch count | 1 |
Batch size | 1 |
CFG Scale | 7 |
Seed | -1 |
比較結果
レンダリング時間はTotal progressの時間を書いてます。
\ | Colab無料枠 | Colab Pro |
---|---|---|
GPUクラス | 標準 | プレミアム |
メモリ | 標準 | ハイメモリ |
GPU | Tesla T4 | A100 |
システムRAM | 12.7 GB | 83.5 GB |
GPU RAM | 15.0 GB | 40.0GB |
ディスク | 166.8 GB | 166.8 GB |
レンダリング時間 | 8秒 | 2秒 |
セットアップ時間はどちらも5分ほど。
スペック情報参考
無料枠
Golab Proで標準GPUにしても同じです。
Tue Apr 11 12:50:30 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.85.12 Driver Version: 525.85.12 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Tesla T4 Off | 00000000:00:04.0 Off | 0 |
| N/A 70C P8 33W / 70W | 0MiB / 15360MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:33:58_PDT_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0
total used free shared buff/cache available
Mem: 12Gi 628Mi 7.4Gi 5.0Mi 4.6Gi 11Gi
Swap: 0B 0B 0B
Colab Pro
Pay As You Goで有料枠買ってもGPUは同じです。
Tue Apr 11 12:55:03 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.85.12 Driver Version: 525.85.12 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA A100-SXM... Off | 00000000:00:04.0 Off | 0 |
| N/A 39C P0 46W / 400W | 0MiB / 40960MiB | 0% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:33:58_PDT_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0
total used free shared buff/cache available
Mem: 83Gi 756Mi 79Gi 1.0Mi 3.3Gi 82Gi
Swap: 0B 0B 0B
おまけの成果物
そこそこちゃんとした絵は頑張ってプロンプト練ったり、ひたすら回したり、i2iを繰り返したりしないと、やっぱ出てこないですね。まぁモデルによっては楽に出せたりしますが、権利関係が怪しかったりするのでここには出せないです…w
あとがき
時間帯によってUIが異様に重くなることがあり、GPUの処理速度も時間帯によっては1秒未満で終わることがあった気もするので、この不安定さはクラウドユースの欠点だなぁと思いました。とは言え、GPUを買うことに比べれば手軽に利用できるのは、やはりメリットかなと思います。
よく使う人はグラボ買ったほうがストレスとかから開放される可能性はあるかもしれません。私はRTX2060なのでどう転んでもColabの方がマシなのが悲しいところ…。4070Ti買うか地味に迷いますね。