2016/12/31

ディスクへのアクセス時間

最近、なぜかネットワークドライブへのアクセスにやたらと時間がかかることがあります。
5MBのファイルを読み込むのに30sとか。

2016/12/22

毒リンゴ

おいしいおいしい毒リンゴをおなか一杯・・・食べる羽目に。
いや、別におなか一杯でもないですが。
クリスマスのプレゼントではなくてよかったです。

そしてやったぜ!やったぜ!というメールが飛び交うという。
まだ暫定対策で根本的には解決してませんが・・・。

さすがアメリカ人

2016/12/21

劇的?

いや、多分変わらないと思います。


日曜日にはたと思いついてハンドルを変えてみました。
それだけなら別に大したことないのですが、なんと、このハンドル、ケーブルを通す穴が付いてます。
・・・ということは、ケーブル全てを一旦外す必要が・・・

before(途中)

というわけで、水曜に初回点検(100km)に行って調整してもらったばかりのシフト調整をやり直す、という覚悟を決めたうえで始めた作業・・・でしたが、通し戻している途中でリアのケーブルがほつれるという最悪の事態に。
その時の時間はまだ18:30、よし、自転車屋はまだやっている!ということで自転車屋へ行き、ケーブルセットを買ってきて作業続行。

ハンドルもそうですが、本体フレームのケーブル内装も意外と面倒ですね・・・。

after

これで100gほど軽くなったはず!
まだシフターのハンドルへの組み付け位置調整とかバーテープ巻いてませんが、変速は問題なく、落ちる気配もありません。
SHIMANOはマニュアル通りにやれば問題ないのでありがたいですね。
フロントはいろいろ調整しましたが、リアはケーブルを通しなおした後まったく調整をしてないけどちゃんと変速する・・・

でもフロントってこんなもんだっけ?
なんか重くなったような気もしますが、元々どの程度だったか記憶がないので気にしないことにします。
ルーティングもちょっと変えたりしているのでそのせいもあるのかも
なんにせよ、これで100gほど無駄に軽くなったはず。

いや、手に来る高周波の振動を取りたかっただけなんです。(100km走った感じでは特に問題ありませんでしたが・・・)
という言い訳。


2016/12/18

サドル沼

先日、自転車を5年ぶりに買いました。

で、いつもなのですが、買った自転車のサドルが僕には合いません。
一番最初にロードを買った時も10㎞足らずで痛くなり、これがロードバイクか、とか思った覚えが。

で、それ以来、Tioga AcentiaシリーズのFortis Auraを使い続けている(200km走っても痛くならない)のですが、コンフォート系のサドルのため、434gあるんですよ。
軽くて(250g位?)柔らかめのSelleItariaのsl xc flow を買ってみたのですが、5時間ほどで座骨が痛くなります。
3時間ほどなら良いのですが・・・ロングライドには向きません。

どうも僕の座骨幅は120mm程度のようで、完成車(のXSサイズ)についてくるサドルでは小さいということのようです。
(座骨幅はお店で測ってもよいですが、段ボールに座って窪んだ位置の真ん中間を図るという簡単な方法があります)

というわけで現在サドルを物色中・・・
いや、FortisAuraなら間違いないのはわかっているのですが、せっかく自転車が軽くなったので、300g以下ぐらいでなんかないかな、と。

2016/12/15

検索より探索

今日は平日休みだったので、映画館で「艦これ」と「君の名は」を見てきました。
艦これは・・・まぁ、そんなもんだよね。

「君の名は」は結構幅広い年齢層が見ていたのがちょっと意外でした。
映画自体もよかったです。もう一回見ても良いぐらい。

そしてその後、自転車の初回点検へ。100kmって一瞬ですし。
名古屋店で買ったけど一宮のほうが近かったのでそちらで。
平日の15時なので、やっぱり人がいなかったです。

映画館も平日(の特に朝一)は空いててよいですね。

2016/12/13

まぁ、寿命だよね

最近ノートPCの調子が悪いです。

とは言っても、10年前のDELL XPS 1330(のCPUをT9300ESに、HDDをSSDに、wifiを5300に換装したもの)で、
さらに言えばここ3年ぐらい驚異の稼働率を誇っているため(2年ぐらいは24時間365日での稼働率が90%を超えていました)逆によくここまで持ちこたえているな、という感じなのですが。

挙動としてはCPUのキャッシュに負荷をかけると演算をミスるようなので、どうもキャパシタがへたっているのではないかという疑惑なのですが・・・
CPUを(多分電力消費の少ない)T8100に戻してみる、というのも手なのですが、どちらにしろもうそろそろ寝かせてやった方が良い気がしますね。

お疲れ様でした。

2016/11/26

時代は流れゆく

MPEG2DecPlus
http://csbarn.blogspot.jp/search/label/MPEG2DecPlus

久しぶりにchikuzenさんのHPをのぞいたら、いろいろやっていた。
というか、僕も春にDGDecのidct部分を最近のコードっぽくしようとして、やっぱよくわからん、という結論になったことをやってくれていた。
(というか僕はMPEGの仕組みをよく理解していないという致命的な欠点が)
でもアセンブラをなくしてC言語化、ってコンパイラ最適化に任せるというアプローチにも取れますね。
こうして人間にはできないことが増えていくのか・・・


透過性ロゴ(改)
http://hayateppp.blog.fc2.com/blog-entry-1.html
ロゴのフェード(からCMカットまで)を自動でやってくれる便利なプラグイン。
こういった便利なものも出てきたので、そろそろ環境を再構築する時期ですかね・・・。

2016/11/19

ヤヴァイ、掘らないと・・・(使命感)


秋イベが開始されました。
ふむ、E1は通常編成で輸送作戦か。
ボスドロップは・・・「浦波・初月」

あ、掘るんですね、わかりました。

2016/11/13

データで見るラップタイム







周回 ラップタイム 平均出力
周回 ラップタイム 平均出力
1 10:24 140
1 10:31 149
2 09:43 165
2 9:39 152
3 09:29 179
3 10:02 163
4 09:35 181
4 9:32 180
5 09:45 147
5 9:22 158
6 10:11 149
6 9:29 155
7 10:02 127
7 8:35 153
8 10:10 131
8 9:39 152
9 09:57 124
9 10:17 135
10 10:27 144
10 10:06 145
11 10:11 146
11 10:23 136
12 09:41 162
12 10:36 133
13 09:57 153
13 10:43 132
14 10:34 155
14 10:38 122
15 10:22 131
15 10:57 134
16 10:51 131
16 10:52 117
17 10:50 145
17 11:10 126
18 10:21 150
18 10:46 129
19 10:36 144
19 10:40 136
20 10:38 133
20 9:50 145
21 10:43 144



22 10:59 123



23 10:21 145



24 10:28 145




データを解析したものなので、実際のラップとは多少測定ポイントがずれています。
50分経過後ぐらいからVectorJの電池がなくなって左側の出力が0になるという罠。
なので、その後は右側の出力を2倍にしています。
そういえば先週のビワイチの途中で「電池がないぜ」と言われた気がするけど、日曜や水曜は普通に動いたので「あれは気温が低かったせいじゃね?」と結論付けて電池を入れ替えなかった結果がこれだよ!(いや、入れ替えようか悩んだのですが)

ラップごとの平均出力を見ていると、180W出せば9分30秒ぐらい、150Wだと10分、145Wだと10分30秒でしょうか。
良いトレインに乗れた場合の効果は7-9周目などが顕著で、130W程度で10分ちょうどぐらいです。
2-5周目ではガリガリと体力が削られていき、ちょうど体力(W'bal 下の上から2番目のグラフ)が切れるぐらいでよいトレインに乗れたので今回は運が良かったのでしょうか。
確かに10週目ぐらいまではやたらと楽だった気がします。


W'balの説明?はこちら
http://tofud.hatenadiary.jp/entry/2016/03/13/083349

金色豹さん曰く、僕が4時間出し続けられる出力は145W位っぽいので、最終的にそのあたりに落ち着いているのはデータ通りですね。
そして何気に獲得標高1500m・・・1周あたり60mぐらい上るっぽいです。
ふむふむ・・・

あと、どうも秋のほうが風が強かったらしく、参加者の全体でも速度が落ちてそうです。

2016/11/05

わからん・・

むかーし一度やろうとして途中まで(カーネルのみ)しかやっていない、debianの64bit化なのですが、なんか下のページを見ていたら楽にできそうだったからやろうとしてみました。

https://wiki.debian.org/CrossGrading

・・うまくいかない・・・
途中まで(aptとかdpkgの64bit化)は良いのですが、apt-get -f installをやるとどうしてもaptが32bitに戻ってしまいます。
なんでだろ・・・
何処かに設定があるのでしょうが、そもそもdpkgの設定とかよくわかってないので。
apt以外の:i386はx64化してみたのですが、その状態で再起動したらネットワーク関連がだめで、にっちもさっちもいかなくなるという・・・
むぅ・・・なんかミスったかな。

なんかもう普通に新規でインストールして、設定類をすべてコピーすればよいんではと思い始めました。
こういう試行するとき、Hyper-V等の仮想マシンは楽ですね。どこかのタイミングでスナップショットを取っておけばいつでも戻せますから。

タイヤを付け替えたら握力がなくなって結局遠出は出来ない罠

先週のこと。

Michelinのpower enduranceを買ってみました。
というのも先日冠山峠に行ったときにサイドを切ってしまったので。
で、替えようとしたところ例によってMichelinのタイヤは固く、ハマらない罠・・・

夜中にやっていたのですが、一度後輪を嵌めて、回転方向があることに気が付いてもう一度嵌めて、前輪も嵌めて、とやっていたら1時間以上経過・・・
リムに落とすのが大事ですね。まぁ、僕は何も気にせずタイヤレバーを使ってるのでまだ楽なんでしょうが。
そして朝起きると握力が出ない・・・

どこかに出かけようと思っていたのですが・・・


そして今日ははたと思いついてパワーメータを付け直してみました。
どうもVectorJは温度変化に弱い?のか、朝の10度以下の状態で公正をかけた後、しばらくして温まってくると出力が出なくなったり怪しい挙動を示すことがあります。
つけなおしたら治らないかな、という多分意味のないことをやっているわけですが。

そして逆ねじ用のトルクレンチがないことに気が付いて万事休す!
ペダルなので逆側から回せば右ねじ相当になるので何とかなりましたが、角度によっては物理的に干渉して回せなかったりしたのでは。
危ない危ない・・・

冬になったらお店でVector2Jにアップグレードしてもらおうと思っているので逆ねじ用トルクレンチはまぁいいかな。

あと、先日気が付いたのですが、ASAHI NETは1コネクション当たりのアップロードサイズに制限をかけているようで、1.4GB位(1500000B?)を超えると速度が0になります。
複数コネクションを張ればよいっぽいので分割DLとかすればよいのですが。

161113追記
・・・2回、150km弱しか乗っていないけど、MichelinのPower Enduranceがすでにサイドカットしていた・・・
傷がギリギリ中まで達することなく(裏側から見ると一応線が見えるが)、普通に走れていたので、まぁ、その点は評価できるのですが・・・
エンデュランス系のタイヤを使ったのは初めてだったので、もっと圧倒的に丈夫なのかと思ったらそうでもないんですね。


そしてそのさらに1週間後、今度は後輪(前回は前輪)がアルミの破片のようなもので貫通パンク・・・
え・・Michelin POWER Enduranceって、何か呪われてる?

2016/10/08

AC2

例の宇宙船です。
出張で行くことになりそうですが。

で、職場の周りの人に言われることは、「iphoneを買え」もしくは「iphoneもらえるんじゃね?」

でも僕が買うならZEN foneの方ですかね・・・

2016/09/25

mp4boxを新しくしてみた

らファイルのインポートができなくなった。
versionを0.62にしたのですが、
mp4box -add input.m4a video.mp4
とやると、
Error removing file video.mp4
Error:I/O Eror
とか出てくる。

mp4boxのversionをさかのぼっていくと、
0.51まではできたけど0.52から上書きができなくなってるっぽい?

理由はわかりませんが、
http://forum.doom9.org/archive/index.php/t-94541.html
の辺のもう10年前の議論を見ると、
mp4box -add input.m4a video.mp4 -out output.mp4
とやれということに。

なんとなくchangelogの
「UTF16 name handling.」
が怪しい気がします。(0.52以降のmpo4boxはutf8で文字列を吐くので・・・)

まぁ、ファイルを上書きするんだから、多少気を遣うのもわからんではないですが・・・
オプションの説明には
-out filename specifies output file name
* Note: By default input (MP4,3GP) file is overwritten
と書いてあるのに、なんででしょうね。

2016/09/21

台風の影響

今日気が付いたこと。

昨日のNEW GAMEが録れてない!
地上波のテレビが映らない!
共用の漏電ブレーカが落ちてる!
→とりあえず入れてテレビが映ることを確認

・・・取れてない番組はいずれもBSでやっているやつでよかった・・・

2016/09/20

MDR-1ADACの癖

MDR-1ADAC
去年、東京にいるときに近くのビックカメラで買ったんですよ。
というか、オーディオシステムはさすがに持って行かなかったので、オールインワンのまともな再生環境を、と。

思えば
・引っ越した日にノートパソコンを買う
・その数日後?にヘッドホンを買う
・その2か月後?ぐらいに耐えられなくなって適当なモニタを買う→後輩にあげて帰ってくる、
とか結構散財してましたね。
いや、モニタは買った後になぜもっと早く買わなかったか後悔しましたが。

んで、DAC付きのヘッドホンを買ったのですが、東京にいる間は気が付かなかったものの、こいつが結構癖があるような気がしてきました。

前々からうすうす気が付いてはいたのですが、なぜか僕の環境ではUSB 3.0のポートに刺さないとちゃんと動作しません。
最高でも192kHz*24bit・・・だった気がするので、帯域はUSB2.0あれば十分なはずですが・・・
仕様上もUSB2.0 HighSpeedと書いてあるのに、謎です。

まぁ、USB2.0の方につながっているハブは何なのか確認していないので、単純にチップレベル(というかおそらくドライバ)の相性なんでしょうが。
ちなみに、Nexus7(2013)では特に問題なく動作します。(周波数は知りませんが)

→どうも入力電流の関係ではないかと思い始めました。
最大入力電流:1.5Aとなっているので、PCからの給電部に0.5Aまでしか流せないUSB2.0のポートをつなぐと正常動作しない、という。
もっと流せるポートにつなぐ、もしくはヘッドホン側のPC/CHARGEではない口につなげば、別にUSBの対応規格に関係なく行けるのでは。(規格上USB3.0のほうが0.9Aなので有利でしょうが)


自分の部屋に帰ってくるとまともなスピーカでそこそこ音量を上げて鳴らせるためあまり出番がありませんが、好みの音と程よいフィット感で好きな機材です。
・・・そして先日、なぜか新幹線・飛行機用にwirelessでNCに対応したMDR-100ABNを買ってしまうという暴挙に・・・
いや、また別の話ですね。

2016/09/19

アニメは難しい

Speakeasyさんたちの作品を1話からマラソンして見てみました。
といってもアニメだけ、最終回はまだですが。
(小説はすべて発売日に買ったのにまだ読んでいないという体たらく・・・)

2016/09/18

驚異の海外通販

cyclingexpressというのがあるらしいのですが、そこでCanondaleとかDE ROSAの完成車やフレームが安く売ってました。

2年落ちとかですが、Super six carbon 6(frameset)が39999とか、SuperSixEVOのSRAM REDverが255kとか、IDOL ultegra Di2が325kとか。
まじか・・・

ここまでであればまぁ海外ならね、と思うだけなのですが、なんと、国内のお店で組み立てとかもやってくれるという・・・
僕の家の近く?にも対応店舗があったのでアフターサポートとかも受けられそう・・・(ブラジルの方らしい?ので英語で会話する必要があるかもしれませんが)
思わずポチりそうになります。

フレームが40kなら失敗してもあきらめがつくので、自分で組んでみたくなってしまいます。

いや、深夜のハイテンションは怖いですね。
それもこれも天気が悪い所為です。

2016/09/17

force

でもダースベイダーではありません。

今日自転車を漕ごうとしたらアウタートップにしたとき、クランク1周で一回チェーンがずれるような音が・・・
はて?と思ってみてみるとチェーンリングの歯が1か所曲がっているようです。
とりあえず曲げなおして元に戻りましたが・・・そういえばこの間乗っているときに1回チェーンが落ちましたね。

と思って久しぶりにヤフオクを見てみると、force22のコンポセットが76k。
・・・あれ?とポチってしまいそうになりました。怖い怖い。
買ってしまったが最後、フレームを買うか、今の自転車を組みなおすかしかなくなります。

日本では人気がないからでしょうかね。
Ultegraとほぼ同じ価格で買えるなら良いような気がします。

2016/08/21

でれむ

あ…ありのまま 先日 起こった事を話すぜ!

「おれは リゼロを見ていたと思ったら いつのまにかamazonのカートにBDを9個入れてポチっていた・・・」
な・・何を言っているのか わからねーと思うが、おれも 何をされたのかわからなかった・・・

催眠術だとか超スピードだとか(以下略)

世の中には恐ろしいことがいっぱいありますね。

2016/08/17

2016/08/16

ダイキンの調査結果

・日中は35分までの外出であれば、エアコンを「つけっぱなし」の方が安い。
・夜は18分までの外出であれば、エアコンを「つけっぱなし」の方が安い。
とのこと。
具体的な数値を挙げてくれているのがありがたいです。

というか30分程度であればつけっぱなしのほうが安い、というのは感覚通りですね。

データから見る最近の傾向

5s 出力:783W(843)
1min出力:355W(413)
5min出力:238W(238)
20min出力:204W(209)
60min出力:186W(186)
が直近3か月での最大および、全データの最大(カッコ内)です。

5s出力については覚えがあり、確かに最近スプリントをしていません。
60minについてはベスト4がいずれもイベントでの値となっていることから、如何に普段追い込んでいないかということが分かってしまいます。
というかどこかへ行くときには信号なりなんなりがありますし、どうしても後先を考えてしまうため追い込めませんね・・・
部屋の中でもそこまで集中力がないことから連続では20min程度で終わってしまっていることが多いですし。
1minについては単純に素材の・・・というか普段部屋の中で回す時にはアニメのOP/EDで全力でこぐ、ということをしているため好きな曲かどうか、というのが大きいような・・・

というか根本的に練習の頻度をもっと上げないとだめですね。

2016/08/15

サイクルキャリア

車に自転車を積んで出かけることが多いので、サイクルキャリアなるものを買ってみようと思い立ちました。
僕が知ってるキャリアメーカーはTHULEかinnoかterzoですが、Terzoはフォークマウント式のみでラインナップが少ないのでひとまずTHULEかinnoで。

フォークマウント式はフルカーボンフォーク不可、と書いてある場合があるのでひとまず選外。
ディスクブレーキ化したときにだめかもしれですし、(スルーアクスル対応というのもありますが)自転車をそのまま屋根の上に乗っける感じのやつで行こうかと。

というわけでTHULEのProRide598を買ってみました。
グランツールとかでチームカーに乗ってるアレです。
というか合わせてTH775(足)とTH960(108cmのエアロバー)も。

んで、とりあえず自転車を乗っけ・・・るのが大変だった。
僕の車はフィールダーなので背が高いわけでもないのですが、脚立があった方がやりやすいかと。(なしでもなんとかなりましたが慣れで何とかなるのかならないのか・・・)

速度は70km/h程度でしか走っていないのでわかりませんが、特に問題なさそうです。
というかもともと自転車でも70km/hぐらいは出ますしね。
多少風切り音がするな、と思っていたら、別に自転車を乗っけてなくてもキャリア(TH598)を付けて走ると風切り音がすることが判明。→どうもエアロバーのT-track部分にゴムのふたをしていなかったからではないかと思い始めました。

いや、しょうがないですし音楽を鳴らしていれば気にならないのですが、使わない時は外しておこうと思いました。
キャリアだけなら取り外しもとても簡単で、1分かからないくらいで外れるのが良いです。

バーも外そうとするとたくさん回さなければならない箇所があるのでちょっと大変(3分ぐらい?)かも。
で、外すのはまだ簡単ですが、つけるときにまた位置決めをしなければならないのが面倒です。(気にしなければよいという話もありますが)
というわけで普段はバーはつけたまま、キャリアは外して荷室に放り込むことにしました。

別にロードバイクなので3人・3台は特に問題ないのですが、積み下ろしが楽になるといいな、ということで。
実際に使ってみて問題なければもう1個TH598を買って、ルーフ上に2台、荷室に2台で、4人・4台を乗っけられるようにする計画です。
現状は3(4)人・3台が限界で、セダンでも3人・3台は可能だったのでステーションワゴンにした意味があまりないという・・・。

2016/08/14

夏イベ

前回の反省を生かして攻略情報が十分じゃなくても突撃します。

2016/08/12

ある日家に帰ったら

鯖から「ピー」という音が・・・。

音のもとはRAIDカード(RR2720)で、
Disk 'WDC WD30EFRX*' at Controller1-Channel4 failed.
とのこと。

ひとまず重要なデータだけ別ディスクにバックアップし、予備のHDDを付けて復帰しました。

異常を出したHDDはC5(Currend Pending Sector Count)が1個ありましたが・・勝手にリトライはしてくれないのでしょうか。
「Enable Continue Rebuilding on error」をDisableにしてるからかもしれませんね。

SMART情報は
09(稼働時間):21700時間
0C(電源投入回数):22回
C1(ヘッド退避回数):9771回 (70)
となってますが、不良になっていない(まだRAIDで動かしている)ほかのディスクの情報をRaidManagementユーディリティから見るとC1が軒並み30(/255?)ぐらいまで減っているのが気になる・・・
HighPointの管理ユーティリティでは生の値が見れないので一体いくつなのかいまいちわかりませんが。

C1自体はそこまで気にしなくてもよいと思いますが、C1が0になってSMART failureになった場合(なるのかな?)にどんな挙動になるんでしょうね。
いずれにしても3年したらHDDを交換するつもりでいたのですが、最近は大容量ディスクも安くなってきたので考え物です。

今買うとすればWD red 8TBか、Deskstar NAS 4/6TBあたりでしょうか。
・・・そういえばHGSTはWesternDigitalに買収されていたので、実はWD red 8TBってハードはHGSTと同じだったりしたりして・・・(ヘリウム充填とかも一緒ですし)
8TB*4 RAID5で24TBとか胸が熱くなりますが・・・別に3TB*4の9TBで困っていないという話もあります。
録画済みの動画が3TBもあるのが圧迫しているだけで、実際、1クールで必要なHDDって20作品録るとしても800GB程度で、1TBあれば十分です。
ということは保存領域を8TB*2でRAID1として、作業領域は3TB*2のRAID0とか、*3のRAID5で適当に作る、という手も。

悩ましいものです。

2016/07/27

handbrakeの音声がおかしい

Handbrake ver10.5にはいふりのOPをエンコードさせたところ、音がおかしくなりました。
変なエフェクトがかかってるような音です。

調べたらほかにもそう言っている人がいました。
http://tdcat.com/2015/10/audio-problem-in-handbrake/

出力フォーマットをmp3にすれば問題ないのですが、libavもFDK-AACもどっちもおかしいような・・・。
エンコード方法を変えれば問題ない、ということはデコーダが悪いわけでもないようです。
単純にエンコーダの問題でしょうか。もしくは入力が24bitWaveだからとか・・・

いつもはNeroを使っているので良いのですが、Handbrakeも万能ではない、ということで。

2016/05/31

負けたけど勝った


・・・春イベ実施中です。

2016/04/03

5年間

最近、SSEとかAVXとかの中身を調べていて思ったこと。
AVXは浮動小数点が256bit化され、AVX2は整数演算も256bit化されたらしいです。
だからAVX2ではx264の性能が上がってるんですね・・・

それにしても、CPUの最新モデルであまり変わり映えがしなくなって早数年、
PCの性能を左右する自作のキーパーツ ~CPU再入門編 その1~
でも5年前のCPUにもかかわらず、OC前提ならまだいけるのでは?(意訳)と言ってしまっているように、実質、今でも5年前のCPUであるところのi7-2600Kから乗り換えるメリットは薄いといっていいでしょう。なにせ、定格から30%もOCして常用できます。
この差を電力効率の向上でペイできるかというと実際のところ大半の人の使い方では「NO」でしょう。
電力が50W違って24時間365日動かしっぱなしにしても1万円/年も変わりません。

1998年ごろからの目まぐるしく変わるCPU市場を見慣れてしまった分、最近は「何も変わらない」という気がしてしまいます。
その理由を求めるなら、ついこの間Intelが認めたようにムーアの法則が崩れたこと、パソコンの主目的がシミュレーションやゲームなどの演算能力を必要とするものからただ単にインターネットができればよいというように変わってしまったこと、単にライバル(AMD)の停滞といったことも挙げられます。

スマホの普及により、ネット利用向けのパソコンの市場は縮小している昨今ですが、縮小すればこそ、コアな人たち向けの自作PC、という時代が再度来てほしいと願ってしまったりもします。

2016/03/26

コンパイラの吐くアセンブリコードがほぼ手書きと同じレベルな件

というかもはや最適化はインラインアセンブリではなく、
「如何にコンパイラが最適化しやすいCコードを書くか」ということに尽きる気がします。

というわけで21500ぐらいまで来ました。

何はともあれ、自分の環境(DevilsCannyon=Haswell)4.5GHzで普段使っているフィルタをかけて25~26fps出るようになったため、24フレームのアニメをフィルタをかけてリアルタイム再生できます。

参考にいつものフィルタは↓(TFMは事前処理(1pass目)なので2pass目では実質バイパス)
TFM(mode=1,order=-1,PP=1,slow=2,input=TFMout,batch=true)
TDecimate(mode=1,tfmIn=TFMout,input=TDout,batch=true)
FluxSmoothT(temporal_threshold=3)
Spline144Resize(resizex,resizey)
block=32
dfttest(ftype=0,f0beta=1,sigma=4,sbsize=block,sosize=block/2,smode=1,swin=0,tbsize=1,tmode=0,twin=7,dither=1,opt=0)
unsharpHQ(STR=1.0)

2016/03/21

7日間の残り

フロイド-スタインバーグ・ディザリング

ネックはdfttestのdither処理難ではないかというところで。
単純に最新のVCでコンパイルするだけで2割速くなりました。

が、そこからがなかなか短くならない・・・

コードの最適化もしているのですが、1000フレームのアニメをエンコードするのに
VC2015 communicateのプロファイラでモジュールのサンプル時間(1ms/sample)を測定したところ
dfttest 1.9:30123
dfttest VC14 /Ox /Arch:SSE2:25118
dfttest VC14 /Ox /Arch:SSE2 Optimized Code:22230
ほどかかっているようです。

ちなみにほかにも
fftw:39781
DGDecode:7348
FluxSmooth:3348
unsharpHW:3113
SplineResize:2457
となっています。
fftwは並列化されているためボトルネックにはならないのですが、やはりdfttestの関数自体の20s超が気になります・・・。
ディザリングをしなければこれが劇的に減るのですが、ね。

もうちょっとコードを弄ってみましょう。

というか、コンパイラで早くなったのはどうも浮動小数点の精度の所為な気がします。
というのも演算結果が変わるので・・・。
まぁ、SNは90dB以上=0.002%程度の差、1digit程度の差しかないため、実質問題はないかと。
/fp:preciseを指定しているのですが、謎です。

2016/03/09

どこへ行こうというのかね?

MASM refference
x86/x64 SIMD命令一覧表 (SSE~AVX2)

・・・なんでこんなことを調べているのでしょうか・・・

visual studio expressを2015にしたんですよ。
んで、よくよく調べるとMASMってちゃんとVCに入ってるんですね。

というわけで今までMASM6.15でアセンブルしていたのを最新版でアセンブルしようと・・・したらできなかったという話です。

masm6では問題なくアセンブルできていたのに、その後継の14でできなくなるとは之如何に。

table1 sword 16384, 21407, 16384, 8867
movdqa xmm0,[table1]
というようなコードをアセンブルすると

エラー A2022 instruction operands must be the same size

と言われるという・・・
如何せん僕はwindowsのソフトをほとんど弄ったことがありません。
見たことがある(わかるわけではない)のも386のアセンブラぐらいというロートルなので、そもそもオペコードの意味が分からない・・・
とかいろいろグーグル先生に尋ねた結果、アドレスの書き方が良くない?らしいということが判明。
movdqa xmm0,xmmword ptr[table1]
というようにしたら治りました。

まぁ、あまり原因はわかっていないのですが。
_DATA SEGMENT PARA PUBLIC USE32 'DATA'とか書いてあるのが多少気になりますが、そもそも意味が分からない・・・

という話とは多分関係ないのですが、ひとまず、DGIndexをAVX2を有効にしてコンパイルすると
同一ソースで150MB/s→170MB/s@Haswell4.5GHzぐらいになりました。fpsは調べてませんが。
大体1割早くなった感じでしょうか。
AVX2>AVX=SSE2ぐらいで。

TIVTCも早くなったりするだろうか。
というわけで試してみたけど変わりませんでした。
そして別にコンパイラ最適かじゃなくて、Tdecimateの差分算出を並列処理させれば早くなるんじゃね?とか思って
ベクター化と並列化のメッセージ
を眺めている今日この頃。

深みにはまるだけな気がして仕方がない・・・

2016/03/06

危険予知

最近・・でもないですが、KYってのが多くありませんか?

2016/02/11

冬イベ

カンパンがガルパンに見えて仕方がない・・・

2016/01/11

2年越しの夢が・・・

ついにかないました。

・・・といっても、長らく、鯖(Windows Server 2008R2 SP1)にIE11がインストールできない病にかかっていたのが、ようやく治った、という話ですが。

【経緯】
IE8,9あたりのサポートがなくなります。
どうせFFを使っているので困らないのですが、IEのコンポーネントを使っているアプリ系で動作不良が出てくると困るな、と思ってようやくアップデートしようと思い立ちました。
(というかずっとエラーになっているのは知っていたのですが、困らないので放っておいてた)
・・・というか、IE10もインストールが成功しないまま放っておいてたな・・・

【その1:なぜか成功しない(今思えばIE9絡み?)】
ずっとWindowsUpdateで
エラーコード:3701,0x80070002
というのが出続けていた。
WUのキャッシュを削除したり、いろいろやっても変化なし。
のため、あきらめてOSを上書きインストール。

・・・したのに治らない!
お前どういうことだ!?

というわけでいろいろgoogle先生にお伺いを立てたところ
C:\Windows\IE11_main.log
見ればいいんじゃね?ということを教えてもらう。そうか、ログとかちゃんと残ってるんだ・・・