03:38:30
zunda
@zundan@mastodon.zunda.ninja
C++、15年とかいうレベルで書いてない気がする…
03:38:46
zunda
@zundan@mastodon.zunda.ninja
03:40:02
zunda
@zundan@mastodon.zunda.ninja
LabViewよりはつらくなかった印象(なにをやってたんだ
03:47:38
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 01:56:54 毎日10km走ってますの投稿
nacika@oransns.com
このアカウントは、notestockで公開設定になっていません。
03:49:30
zunda
@zundan@mastodon.zunda.ninja
さすがに$399はキーボード別の値段かあ(それでもLinuxが入ってHHKB BTがつながるなら悪くないかも)(キーボードのないマシンにLinuxをインストール)
03:52:25
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 02:15:25 はまだ(てすとくん)の投稿
testkun@mstdn.beer
このアカウントは、notestockで公開設定になっていません。
03:52:42
zunda
@zundan@mastodon.zunda.ninja
04:01:14
zunda
@zundan@mastodon.zunda.ninja
04:01:56
zunda
@zundan@mastodon.zunda.ninja
04:03:36
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 04:02:41 unaristの投稿
unarist@mstdn.maud.io
このアカウントは、notestockで公開設定になっていません。
04:03:38
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 04:02:51 unaristの投稿
unarist@mstdn.maud.io
このアカウントは、notestockで公開設定になっていません。
04:04:21
zunda
@zundan@mastodon.zunda.ninja
NaNのあまりビットに情報いれてるの、なんだっけ!
04:04:26
zunda
@zundan@mastodon.zunda.ninja
08:02:23
zunda
@zundan@mastodon.zunda.ninja
@ksmakoto なるほど、そういう名前でしたか!何かの実装で使ってるよってどこかのポッドキャストかなにかで知ったのですよねー。
08:02:30
zunda
@zundan@mastodon.zunda.ninja
@tadd なるほど、そういう名前でしたか!何かの実装で使ってるよってどこかのポッドキャストかなにかで知ったのですよねー。
08:05:21
zunda
@zundan@mastodon.zunda.ninja
ルンバさんアプリ、ルンバさんが帰宅を始めた時点で「仕事無事終わり!」って報告してくれるので、そのあと遭難する可能性もある。
08:06:29
zunda
@zundan@mastodon.zunda.ninja
そもそも目の前の家電と通信するのに、たぶんバージニアかどこかの計算機経由なの、おもしろいよねー(今度どこ経由か調べてみたいな)
08:09:09
zunda
@zundan@mastodon.zunda.ninja
WeMoは電話が家のネットワークに居ればローカルでおさまってるっぽいよね(そして時々デバイスを見つけられないw
08:12:29
zunda
@zundan@mastodon.zunda.ninja
08:12:56
zunda
@zundan@mastodon.zunda.ninja
メモリ空間はまずカーネル空間とユーザー空間で分けられてるし,ユーザー空間のメモリも 1 のプロセスが全部占有できるわけではなくプロセスあたりのスタック容量とヒープ容量は決まってて,そうしたプロセスに紐付いた仮想メモリのページテーブルをガンガン切り替えていってプロセスを切り替えてマルチプロセス動作するので
08:12:59
zunda
@zundan@mastodon.zunda.ninja
Linux なら sysctl とかでスタックの容量とかの制限はとっぱらえるんけど,Windows がそこらへんどういう設計でどうやっていってるのかはあんまり覚えてないから知らない
08:13:02
zunda
@zundan@mastodon.zunda.ninja
Linux には kexec(2) というシステムコールがあって,名前の通りカーネルを起動するシステムコールなのですが,exec(2) が自分自身のプロセスを全く新しいプロセスとして作り替えて別のプログラムを起動するように kexec(2) は新しくカーネルを起動しなおしてソフトリブートみたいなことをする
08:13:09
zunda
@zundan@mastodon.zunda.ninja
Wine は DirectX 9 はかなりの完成度で,DirectX 10 や DirectX 11 も一部はサポートしてる
08:13:17
zunda
@zundan@mastodon.zunda.ninja
wine は互換レイヤーやエミュレーターとはまたやってることが少し違うので場合によってはグラフィック処理なんかでも Windows より性能向上することもあるよ
08:13:25
zunda
@zundan@mastodon.zunda.ninja
とはいえ Windows と *nix は根本的に違う仕組みのモノなので性能が落ちるときこともあるし,Windows の user32.dll とか kernel32.dll とかを経由する普通のアプリとかじゃなくてわりと ntdll.dll を叩いちゃうとかあるいはもっとハードウェアに直接働きかけるようなソフトウェアは微妙になりがち
08:13:28
zunda
@zundan@mastodon.zunda.ninja
DirectX 12 とか現に GPU ガンガン叩いてるじゃないですかヤダー
08:13:31
zunda
@zundan@mastodon.zunda.ninja
あと ASIO みたいなオーディオミキサバイパスするやつも
08:13:34
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 07:39:13 白坂/pepepperの投稿
reiden@mstdn.maud.io
このアカウントは、notestockで公開設定になっていません。
08:13:36
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 07:40:13 白坂/pepepperの投稿
reiden@mstdn.maud.io
このアカウントは、notestockで公開設定になっていません。
08:13:42
zunda
@zundan@mastodon.zunda.ninja
抜きもなにも,べつに Windows に限らずカーネルやソフトウェアスタックをある程度バイパスして性能稼ぐアプリなんて今時いくらでもあるじゃないですか
08:13:45
zunda
@zundan@mastodon.zunda.ninja
それに Windows の常駐アプリとかシレっとカーネルドライヴァみたいなことしたりなんなら rootkit みたいなことするやつたくさんおるし……
08:13:48
zunda
@zundan@mastodon.zunda.ninja
まあ DirectX12 じゃなくても Vulkan とか Metal とかみんなどんんどん低レイヤなので
08:13:50
zunda
@zundan@mastodon.zunda.ninja
抽象化が厚すぎると性能出ないし思ったように操作できないってゲーム屋がみんな言うから
08:13:57
zunda
@zundan@mastodon.zunda.ninja
MS-DOS の問題はそこじゃなくてメモリ保護がないことのほうが重大なので
08:14:26
zunda
@zundan@mastodon.zunda.ninja
カーネルもアプリもフラットなメモリ空間に居るので,アプリがカーネルのデータを別のアドレスに勝手に移動するとかやりたい放題だったし,そういう環境だと素で C の for 文書き間違えたとかだったとしてもそのまま buffer overrun してカーネルの領域のメモリまで上書きしてブッ壊すとかそういうのだったんで
08:14:27
zunda
@zundan@mastodon.zunda.ninja
08:14:33
zunda
@zundan@mastodon.zunda.ninja
Windows NT カーネルはマイクロカーネルとしてキチンと設計されてたけれど,ver. が進むにつれてグラフィック描画とかはガンガンカーネルに戻して性能稼ぐようになって,ハイブリッドカーネルになっちゃった
08:14:42
zunda
@zundan@mastodon.zunda.ninja
NT カーネルになっても行儀の悪いカーネルドライヴァーはいくらもでいるし,それに DirectX とかは野放図にみんながデヴァイスを勝手に奪いあって描画するのではなくて,そこにカーネルによる調停とを入れた上でアプリがハードウェアを直接叩く感じなので
08:14:44
zunda
@zundan@mastodon.zunda.ninja
これは Linux もそうで,本来 Linux の描画はみんな X が変わりにやるハズだったのに,みんな X をスルーして Linux の DRM(Direct Rendering Manager)な GPU ドライヴァーを通じてガンガンデヴァイスに直で描画してるし
08:14:47
zunda
@zundan@mastodon.zunda.ninja
そうしたらフォント描画も XFont は無視して DRM の上に実装したフォント描画ライブラリで描画するようになったりしたし,X がやってることがマウスやキーボードのイベント通知くらいしかやることなくなったから,じゃあ X 要らないじゃんねってのが Wayland です
08:14:58
zunda
@zundan@mastodon.zunda.ninja
Dune とかみたいな,いっそのことプロセスという概念を仮想マシン(VM)に置き換えて OS のカーネルの変わりに kvm とか Xen みたいなハイパーヴァイザーが調停すればアプリケーションは DOS みたいにハードウェアを完全に OS 無しで叩くみたいなプログラム書けるじゃん!という研究があったりはします
08:15:00
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 07:57:44 白坂/pepepperの投稿
reiden@mstdn.maud.io
このアカウントは、notestockで公開設定になっていません。
08:15:10
zunda
@zundan@mastodon.zunda.ninja
それは逆で,元々は OS がないあるいは OS がただのベアメタル(OS 無しの環境のことね)のアプリのライブラリでしかなかった時代に,CPU とメモリという計算機 1 台の概念をセットにして仮想的に複数作っちゃえば,複数のプログラムが同時に動作できるじゃん!という発明がプロセス
08:15:22
zunda
@zundan@mastodon.zunda.ninja
んで,時代が 30 年とか 40 年くらい下ってきてハードウェアによる仮想化支援が一般的になってきてプロセスみたいな OS によるエミュレーションじゃなくて本格的に計算機複数台をご家庭でも仮想化できるようになった時代に,「じゃあプロセスじゃあなくてこの仮想マシンを使うのもアリじゃん」っていった天才が出てきたわけよ
08:15:31
zunda
@zundan@mastodon.zunda.ninja
実際 Chrome なんかはプロセスをサンドボックスに突っ込んで仮想化することでセキュリティとかやってるけど,じゃあそもそもプロセスという形じゃなくても仮想マシンならもっと強いサンドボックスとして機能するじゃん,というのもまあ自然
08:15:35
zunda
@zundan@mastodon.zunda.ninja
WSL なんかもこの方向の研究の別の枝みたいなもんっすね,あれ Microsoft の論文が元ネタだし
08:15:41
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 08:03:43 白坂/pepepperの投稿
reiden@mstdn.maud.io
このアカウントは、notestockで公開設定になっていません。
08:15:51
zunda
@zundan@mastodon.zunda.ninja
そうするとアプリケーションが完全にハードウェアに先鋭化して書けるし,OS によるメモリ保護よりもハードウェアによる仮想化支援のほうがよっぽど強力に分離されてるから VM の中から外へ攻撃するのは難しいし
08:16:06
zunda
@zundan@mastodon.zunda.ninja
ただ,この方法だとせっかく OS が抽象化していた部分を完全に抛棄してしまうのでアプリの実装がクソ面倒になるという問題があって,Dune は libDune みたいな OS の変わりになるライブラリを作ってるし,Dune 以前に仮想化が一般化する前にも仮想化を使わずに似たようなことをしようとした ExoKernel が 1995 年には既にありました
08:16:12
zunda
@zundan@mastodon.zunda.ninja
まあいくら OS 代わりの library(libraryOS,LibOS)を用意しても,プロセスに比べて VM はやっぱり重いしプロセス同士は簡単に通信できるけど VM 同士の通信はめっちゃ重いので,みんなの家庭の OS のアーキテクチャを新しくしてしまうほどのブレイクスルーには至ってない
08:16:15
zunda
@zundan@mastodon.zunda.ninja
ただその libraryOS という考え方やアーキテクチャ(設計)の一端が産業的に成果として応用されたのが WSL です
08:16:17
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 08:08:06 白坂/pepepperの投稿
reiden@mstdn.maud.io
このアカウントは、notestockで公開設定になっていません。
08:16:45
zunda
@zundan@mastodon.zunda.ninja
ハイパーヴァイザーが介在する以上はたとえば kvm なら virtio なデヴァイスに限定できるから全部のハードウェアを制御しないといけないわけじゃないけど,とはいえドライヴァからアプリを書くのはやりたくないよなって感じ(だからこその LibOS ではあるのですが,まだクラウドとかでみんなが使う段階にはなってませんね)
08:16:49
zunda
@zundan@mastodon.zunda.ninja
一応クラウド向けの LibOS である unikernel というアーキテクチャは商業製品も出てきたことがあるのですが
08:17:23
zunda
@zundan@mastodon.zunda.ninja
実は Xbox One はゲームが Hyper-V の VM として動作してるっぽいし PS3 とか PS4 とか Nintendo Switch とかも VM としてゲーム起動してたりするようなので,案外この概念自体は応用がされてる感じはする
08:18:23
zunda
@zundan@mastodon.zunda.ninja
@orumin 通知たくさんすんません!とても参考になります。ありがとうございます!
08:45:30
zunda
@zundan@mastodon.zunda.ninja
08:56:27
zunda
@zundan@mastodon.zunda.ninja
\Masterに/ \なりますたー/
Merged tootsuite/mastodon at 7ac5151b74510aa82b07e349373bd442176e1e94 aka v2.4.3
08:58:07
zunda
@zundan@mastodon.zunda.ninja
念のためリリースタグのアプリも用意してたんだけど自分が入れた変更のcherry-pickもたいへんだし止めちゃおうかな
09:02:59
zunda
@zundan@mastodon.zunda.ninja
ブーストの連投でSidekiqのトゥートの配信が25分まで遅延した様子です。1トゥートの配信に1秒弱かかるのようで、2スレッドで毎分130トゥートくらいずつ配信できてる。
09:06:13
zunda
@zundan@mastodon.zunda.ninja
09:07:43
zunda
@zundan@mastodon.zunda.ninja
09:09:20
zunda
@zundan@mastodon.zunda.ninja
そういえばイカリソースが箱でしか買えなくて今1.8リットルの瓶が6本あるよ。誰か買ってw
09:32:49
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 09:32:33 かるばぶの投稿
babukaru@mstdn.maud.io
このアカウントは、notestockで公開設定になっていません。
09:33:05
zunda
@zundan@mastodon.zunda.ninja
12:07:24
zunda
@zundan@mastodon.zunda.ninja
単発のトゥートなら配送先は120ヶ所くらいなので2スレッドのSidekiqが1分くらいで配り終わる。
14:32:13
zunda
@zundan@mastodon.zunda.ninja
ExcelもWordもちゃんと使えば便利なのにねえ
14:33:54
zunda
@zundan@mastodon.zunda.ninja
14:42:27
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 14:41:54 1日24時間睡眠健康法の投稿
yakitama@mstdn.yakitamago.info
このアカウントは、notestockで公開設定になっていません。
14:43:22
zunda
@zundan@mastodon.zunda.ninja
はっ! Coffee Dash Buttonつくりたい。押すとコーヒー淹れてくれるの (ムリです)
14:58:33
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 14:57:52 SHIMADA Hirofumiの投稿
shimada@mstdn.maud.io
このアカウントは、notestockで公開設定になっていません。
14:58:40
zunda
@zundan@mastodon.zunda.ninja
15:52:52
zunda
@zundan@mastodon.zunda.ninja
commitもタイプしにくいけどinstallもタイプしにくいよね
16:08:48
zunda
@zundan@mastodon.zunda.ninja
Mastodonにtwilogとtogetterのインターフェースはやしたいんだけど
16:13:29
zunda
@zundan@mastodon.zunda.ninja
ちなみにこのインスタンスからのトゥートは120ヶ所くらいに2スレッドのSidekiqでお送りしております。配達には1トゥート1秒くらいかかるので普段だと最大1分くらい遅延します
16:18:52
zunda
@zundan@mastodon.zunda.ninja
16:19:04
zunda
@zundan@mastodon.zunda.ninja
16:55:27
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 16:55:07 estplsの投稿
estpls@mstdn.beer
このアカウントは、notestockで公開設定になっていません。
16:55:55
zunda
@zundan@mastodon.zunda.ninja
よく行くスーパーの隣りの中華料理屋さんおいしいよ!
16:56:05
zunda
@zundan@mastodon.zunda.ninja
17:09:19
zunda
@zundan@mastodon.zunda.ninja
17:09:33
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 17:05:13 てるこの投稿
t@mstdn.beer
このアカウントは、notestockで公開設定になっていません。
17:09:35
zunda
@zundan@mastodon.zunda.ninja
2018-07-11 17:04:51 サンロードカマタ
の投稿
currymantan@mstdn.beer
このアカウントは、notestockで公開設定になっていません。
17:09:49
zunda
@zundan@mastodon.zunda.ninja
17:17:34
zunda
@zundan@mastodon.zunda.ninja
そういえば新しくできたラーメン屋さんにカレーラーメンがあったな
17:18:58
zunda
@zundan@mastodon.zunda.ninja
20:37:50
zunda
@zundan@mastodon.zunda.ninja
.oO(SideiqってPostgresにつなぐんだっけ)
Sidekiqのdyno起動して試してみー
20:38:26
zunda
@zundan@mastodon.zunda.ninja
@roman dockerさんchownしたりするからかな?
20:39:49
zunda
@zundan@mastodon.zunda.ninja
現在Postgresへの接続は3本(なんか少ないな)
20:42:01
zunda
@zundan@mastodon.zunda.ninja
$ heroku ps:scale worker=1
Scaling dynos... done, now running worker at 1:Hobby
したらPostgresへの接続は5本に。びみょうだなーw
20:43:45
zunda
@zundan@mastodon.zunda.ninja
Sidekiqじたいはお仕事をRedisから取って来るんだけどお仕事の結果をPostgresに書き込むかどうかはアプリ次第な気がするんですよね
20:48:11
zunda
@zundan@mastodon.zunda.ninja
20:48:21
zunda
@zundan@mastodon.zunda.ninja
Sidekiqのスレッド数ちょっと増やしてみようかな
20:53:25
zunda
@zundan@mastodon.zunda.ninja
Sidekiqのスレッド数を2から6にしてみました。今は2つのdynoで稼働してるので合計で4から12。あー。Redisへの接続数制限を超えましたw
1 dynoあたり4でどうだ。
20:54:24
zunda
@zundan@mastodon.zunda.ninja
だーめーだw あとから起動してきたworker dynoの分の接続数がないw
20:56:58
zunda
@zundan@mastodon.zunda.ninja
あ、そうか。ちょっとだけPuma止めてみますね。しばらくの間このインスタンスからエラーが返ります。おさわがせします。
21:05:31
zunda
@zundan@mastodon.zunda.ninja
Mastodonのsidekiqは1スレッドあたりPostgresへ1本接続を確立するようです。
Pumaとstreamingを止めた状態で4スレッドのSidekiqを動かしてるとPostgresへの接続数は4、2スレッドにすると2になりました。
21:08:10
zunda
@zundan@mastodon.zunda.ninja
21:09:32
zunda
@zundan@mastodon.zunda.ninja
蛇足ですがこのインスタンスのPostgresはHerokuの安いやつなのでマルチテナントなので、サーバが管理してる接続数はむっちゃ多くて、自分の分は、heroku pg:infoか https://data.heroku.com/ から見えるのが一番信用できそうです。
21:27:38
zunda
@zundan@mastodon.zunda.ninja
LogEntriesからエラー出てたよってメールもらった。ありがたいのう。