過去ログ(2017年7月〜12月)

Google Analyticsの変更+gzip圧縮ソフト変更

特に理由はないですがGoogle Analyticsのトラッキングスクリプトの新しいやつが出てきていたのでそれを導入しました。といってもアクセス解析する必要があるくらい人が来るサイトではないから意味ないっちゃ意味ないんですがね。ただ以前はレンタルサーバー側のアクセス解析っぽいのがみすぼらしいのしかなかった(しかも昔のが見られない)からたま~に解析の画面を見たい気分になった時はAnalyticsしか選択肢がなかった。今はいつの間にかAWStatsなるものが導入されてAnalytics以外でもそこそこグラフィカルな解析画面を見られるようになったのでぶっちゃけ外してしまってもよいとは思ったのですが削除はせず新しいのに変更に。自分のサイトは未だにタグ打ちでHTMLファイル作ってる前時代的なサイトなので馬鹿正直にすべてのファイルのトラッキングスクリプトを書き換えていたら時間がかなりかかってしまいますがEmeditor(Free版でも可)で複数ファイルの複数行置換でさくっと。

それからhtmlやらcssファイルのサイズ削減に使用するgzip圧縮に使うソフトにzopfliに変更して更に僅かばかりのサイズ削減を実施。トラッキングスクリプト自体も以前のよりバイト数が減ってるので数百バイト程度は軽くなりました。それがどうしたという程度の差ではあるけど。ただこれをファイル一つずつ圧縮するのは手間なので手間を減らすために以下のバッチファイルで複数のhtmlファイルのドラッグアンドドロップで圧縮を実行出来るようにしました。ちなみに下のバッチファイルはzopfli.exeが"D:\tool\gzip"内にある場合です。他の場所にある場合はそれに併せて変更します。

cd /d "D:\tool\gzip"

for %%f in (%*) do (
  zopfli.exe %%f
)

複数ファイルをまとめてバッチファイルで処理するための知識を得たので以前WebPをバッチファイルで処理する時ファイル一つずつしか処理できませんでしたが以下のようにして複数ファイルを処理できるようになりました。以下のバッチファイルのコードはcwebp.exeの場所が"D:\tool\webp\bin"の中にある場合です。

非可逆圧縮でよい
cd /d "D:\tool\webp\bin"

for %%f in (%*) do (
  cwebp -q 90 %1 -o %~dpn1.webp
)
画質を調整したい場合は90のところの数字を変更する(0~100)。数字を下げれば画質は悪化するがファイルサイズも減る
可逆圧縮希望
cd /d "D:\tool\webp\bin"

for %%f in (%*) do (
  cwebp -lossless -q 100 %1 -o %~dpn1.webp
)
可逆圧縮の場合-qの後ろの数字が大きいほどファイルサイズは小さくなるが圧縮に時間がかかるようになるとのこと。なのでここでは最大の100を指定している。ただ、元がJpegのような非可逆圧縮だとファイルサイズが増える可能性が高いのでその点は注意。

SSDの容量を空ける

今のSSDにシステムを移行してからしばらく経ちますがなんか空きが少ないなーと思っていたらそういえばページファイルとかが容量食っているのを思い出したのでそれをどうにかすることにしました。どれくらいの容量を使っているか確認しようと設定で隠しファイルや隠しフォルダーを表示するようにしたけれど表示されなかったのであれ?となったのですがWin10ではそこからさらに「保護されたオペレーティングシステムファイルを表示しない」のチェックを外す必要がありました。それで確認できたファイルサイズはこちら。

見ての通り、hiberfil.sysが25.5GB、pagefile.sysが9.5GBで計35GBもの容量を食ってしまっています。hiberfil.sysはノートPCの場合は削除しないほうがいいらしいですがデスクトップなんでさっくり消し去ってしまいます。コマンドプロンプトかPowerShellを管理者で起動してpowercfg /h offと入力してEnterを押せばさっくり消えてくれました。pagefile.sysはメモリが足りない時にメモリの代わりとして利用されるファイルなので大量のメモリ積んでるこの環境では不要なのですが完全に削除すると不具合が発生するケースがあるらしいので削除はせずHDDのほうに移しておきます。

Windowsのロゴの近くの検索窓にsystempropertiesperformance /pagefileと入力してsystempropertiesperformance /pagefileコマンドの実行をクリック→「仮想メモリ」の「変更」をクリック→「すべてのドライブのページング~」のチェックを外す→「C:」を選択して「ページングファイルなし」にチェック→設定をクリック→続行しますかと聞かれるので「はい」をクリック→「D:」を選択して「システム管理サイズ」にチェック(自分の場合は)→設定をクリック。これでDドライブにpagefile.sysが出来ましたがCドライブのほうにも残ったままなのでこれはPCを再起動すれば消えます。

これでシステムドライブに30GB以上の空きができました。気休め程度ですがすっきりした気分になりました。

悲しい、とても悲しい

9月にPCのパーツを新しくしたわけですがM.2のSSDが認識されませんでした。対処しようにもまたPC開けるの面倒だったのとWin10の大型アップデートが近いうちに来ることがわかっていたので今月まではそのまま使うことにしていました。Windowsをアップデートしてからも当たり前っちゃ当たり前ですが認識されないままだったのでM.2を使うのは諦めました。とても悲しい。結構な金を費やしただけに。ただ今のシステムストレージは既に5年近く使っているのでこれを機にSATAのSSDからNVMeのSSDに新しくするつもりだったのですがこの有様だったので仕方なく確実に動くであろうSATAのSSDで新しくすることにしました。選択したのはSATAとしてはそれなりに高速っぽいWestern DigitalのWD Blue 3Dの500GBです。3Dじゃないのもありますがそちらは特に大容量の書き込みをする場合に性能の低下が3Dのより大きいようだったのでわずかばかり高価ですが3D版にしました。今後また5年以上使うことになるはずですし。旧SSDはどうしましょうか。Linuxでも入れてみますかね。ちなみに中身のハードウェア自体はSanDisk Ultra 3D SSD同じものらしいです。

Ryzenの消費電力低減を試みる

新しいPCにして軽くベンチを回してます。Ryzenはコア数が生きる用途では性能の割に消費電力は控えめではあるのですが如何せんVegaの方はかなり電気食いだから多少なりとも消費電力を抑えられないものかと調べていると電圧下げて消費電力を減らす試みをしているページがあったので自分もこのサイトで公開されていたK17TK0.9.1β版を使用して電圧低下を試みてみました。

ちなみにK17TKを動かすにはreadmeにも書かれていますが64bit版WindowsではWinRing0x64.dllとWinRIng0x64.sysが必要です。TurionPowerControlのtpc-0.44-rc2.zipをダウンロードして中にあるWinRing0x64.dllとWinRIng0x64.sysをK17TK.exeのあるフォルダに突っ込みます。

まずデフォルトのCPUの消費電力をチェックした結果アイドル時は約55程度、Cinebench時は約180W程度でした。一番の電気食い要因のグラボには負荷はかかっていないはずなのでそれなりにCPUの消費電力の増大が大きいですかね。CPU以外にメモリ64G積んでいるなども要因としてあるでしょうが。で、K17TKを起動させてみると次の通りで3.4GHzでの電圧が1.35Vとなっている。この記事の検証によるとより低い電圧の1.2Vであっても3.7GHzでの動作が可能であったとのことでつまるところ、3.4GHzで1.35Vは電圧が高すぎるという事は間違いなさそうです(個体差はあるにせよ)


上の画像はデフォルトでの電圧設定

電圧が高いと言うことがわかったところでK17TKで電圧設定を行います。まずは上の記事では3.4GHzが1.1Vで動作していたとのことなのでP0(3.4GHz)の電圧を1.1Vに設定してみたかったのだがApplyをクリックしてもHWiNFOで電圧とかの数値を見てみても変化がない。ワットチェッカーでも明らかに消費電力に変化がなかったので色々やってみたらクロックも変えたら反映されたのでオーバークロックするつもりではなかったのだけれどクロックを3.5GHzにしてみました。それでCinebenchを動かしたらOSが即落ちた。1.1では無理があったようで0.0125Vずつ上げてCinebenchを完了出来る電圧を調べ、それが通ったらOCCTで30分通る電圧を調べていたのですがだんだんめんどくさくなってきたので途中で1.2VにしたらOCCT30分もクリアしたのでこれでいいやとなりました。

その時のCinebench実行中時の消費電力は約150W弱でクロックをちょっとだけとはいえ上げつつ消費電力は結構下がったのでまあ満足です。K17TKでの設定だと再起動とかしたら設定が元に戻るからその度にK17TK立ち上げてセットする必要があるけれど。


上の画像は変更後の電圧設定

追記:後日BIOSからクロックと電圧の変更をしてこの作業をしないでいいようにしました

PCを新しくした…のだが

大分前にVegaが出てきたらPCを新しくすると言いましたが当時は下位のVega11を想定していたのですがそれが出るのはまだ大分先っぽいので諦めてVega64で行くことにしました。購入した主なパーツは以下の通り。

種類 メーカー 名前 大まかな価格
(購入時:円)
CPU AMD Ryzen 7 1700X 43000
CPUクーラー Noctua NH-D15 SE-AM4 13000
マザーボード Asrock X370 Taichi 27000
メモリ Corsair Vengeance LPX 64GB
(16GB×4)(DDR4-2666)
62000
グラフィックボード HIS Radeon RX Vega 64 AIR Black 79000
ストレージ Plextor M8PeGN 512GB 23000
ストレージ Plextor M8Pe(G) 1TB 40000
電源 Seasonic Seasonic Prime Titanium 650W 29000

以下は買ったパーツ(のパッケージ)の写真集

AMD Ryzen7 1700X
AMD復活の証。1800Xでも1700無印でもない中途半端さが良い。
Asrock X370 Taichi
マザボはなんとなく長く使えそうだと思ったからこれにした。データ用のSSDをSATAなM.2にしてマザボはX370 Gaming K4でもよかったかも。
Noctua NH-D15 SE-AM4
空冷最強と言われるNoctuaの一番でかいCPUクーラー。オーバークロックしないなら明らかに過剰な代物。
Corsair VENGEANCE LPX 2666
メモリ、無駄に64GBもある。半分でも元のマシンの倍のメモリなのだから明らかに過剰である。
Radeon Vega 64
ゲーム用としてはロマン枠としか言いようのないRXVega64。確実に入手するために予約受付開始当日に電車使って秋葉原まで行ったアホは自分です。
PLEXTOR M8Pe
NVMeなSSD2つ。下がシステム用512GBで別に買ったヒートシンク等を使って加熱を防ぐ予定。上はゲーム用に1TB。最近のゲームって3Dグラフィックバリバリ使うようなゲームだと50GB超えるようなのも珍しくないからこれくらいの大容量が必要だったりする。ただし後述するように問題が発生した。
Seasonic Prime
電源、以前はグラボは補助電源なしだったのでFX-8350でも400W弱で余裕だったけど今回はそうも行かないのでこれにした。箱では10年保証となってるけど12年に変更されたそうな

まあなんだ、明らかに過剰なのばかり。オーバークロックする予定はないのにこのCPUクーラーとか64GBメモリとかVega64とか。電源については容量はVega64使うから必須としてTitaniumはわざわざ選択する必要があるかと言われると・・・まあ保証期間が12年もあるから安価な電源だと6,7年あたりで電源新しくしようとなるところですがその必要がなさそうだと考えればそこまでコストパフォーマンスは悪くはない・・・と思うことにします。

組むのは一筋縄ではいかなかった。組むのが5年ぶりでクーラーはリテールしか使ったことがなかったのにでかいクーラー取り付けようとしたためにクーラーの取り付けにやたら苦労したり以前のパーツの取り外しに苦労したり組み上がってさあ起動だとなったところでキーボード取り付けようとしたらPS/2のコネクタのピンが曲がってしまって直せなかったから新しくキーボード買ってくる羽目になったりとか。

そんなこんなでなんとか起動まではこぎつけられたものここで問題発生、NVMe SSDが認識されない。BIOSからもWindowsからも見つからん。せっかく大容量NVMeSSDを2つ用意したのに使えませんではとっても悲しいことになるのだがここ数日はじっくり対処するだけの時間が取れないのでそれまではこれまで使ってたSSDにOSを再インストールしていろいろベンチマークやってみたりして過ごすことにします。