3章途中から3章最後まで。
3章は、バイトニックソートの実装を、Python版→Rust版1st →2nd → 3rdと進化させていくスタイル。
最初の方は前回バージョンからの差分箇所のソースにコメントが付いているのだけれども、途中からそういうコメントはなくなった。
書籍と自前での手打ちソースだけだと、見比べるのがちょっと辛かった。
もしかすると、暗にしっかりコード見てねというメッセージが込められているのかもしれない。
まぁ紙面の都合なんでしょうけど。
まぁ久々にコンパイルエラーを量産して、何だか楽しくなってきた。
Rustコンパイラのメッセージは本当に親切だ。
エラーの場所も原因も書いてくれるし、修正方法まで提案してくれたりする。
また、Goみたいにビルド時にパッケージというかクレートをダウンロードしてくれるのは便利。
Cargo.tomlに必要なクレートの記述が必要だけども。
各クレートのバージョン管理もシンプル。
3章の冒頭にあるように、Rustによる実装の雰囲気は感じれたかな。
構文とかほぼ覚えてないけど。
結構コード書かないと覚えられる気がしない。
おぼえがき
課題
num_cpus
による物理コアの検出数があってないのは環境のせいだろうか(FreeBSD 12)- 確認環境のi5-4300uは2コア、4スレッドっぽいのだけれども、物理コア数も論理コア数も4という結果に
- そもそもdmesg見ると、
4 CPUs
を検出しているっぽい。あれ、元々論理コア表示されるんだっけ?
- 自前で手打ちした、
benchmark.rs
がちゃんと動いて無さげ。(1コア版の40倍以上の時間がかかってた)。- どこミスったんだ。明日、公式サポートのコード落としてdiffとるか
- (2019.07.06 追記) sub_sortの並列処理のとこで呼び出す関数が親関数のdo_sortになってたー。コピペしたらちゃんと確認しましょう
- どこミスったんだ。明日、公式サポートのコード落としてdiffとるか
- neovimの補完動いてなかった(バッファ内からしか候補拾ってなさ気)
- 補完ないと9章以降辛そうだな。。。
- 作者: κeen,河野達也,小松礼人
- 出版社/メーカー: 技術評論社
- 発売日: 2019/05/08
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る