- 1 名前:デフォルトの名無しさん [2017/10/14(土) 17:38:14.04 ID:uWD69LeP.net]
- Mozilla発のプログラミング言語「Rust」のスレです
公式 https://www.rust-lang.org/ https://blog.rust-lang.org/ https://github.com/rust-lang/rust 前スレ プログラミング言語 Rust 3 https://mevius.5ch.net/test/read.cgi/tech/1495343069/
- 543 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 18:16:21.45 ID:dRKEdAK7.net]
- コテ付けるかアンチスレ池。次からこのスレワッチョイありでいい?NGしたいんだけど
- 544 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 18:19:50.69 ID:ZdJPg4SS.net]
- 次スレは当然ワッチョイ付きだろ
- 545 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 18:29:22.88 ID:dRKEdAK7.net]
- とりあえずワッチョイありの建てたわ
このスピードじゃ次スレまでまだまだ掛かりそうだし
- 546 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 18:30:08.61 ID:dRKEdAK7.net]
- あ、ちなみにワッチョイあり/なしの分裂は運営が認めてる(乱立扱いされない)ので
- 547 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 18:30:13.42 ID:ZdJPg4SS.net]
- そして乱立荒らしと化す
- 548 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 18:31:04.33 ID:dRKEdAK7.net]
- vの数間違えたから一回建てなおした
1514107621使ってくれ
- 549 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 20:33:26.59 ID:E1mkQFcM.net]
- ワッチョイ付けて荒らしがワッチョイコロコロしなかった事例なんて見たこと無いんだが
- 550 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 22:59:14.04 ID:F1BONnbf.net]
- なんだっていいわ。言語の話ができれば。
https://blog.rust-lang.org/2017/12/21/rust-in-2017.html 2017の総括が来てるぞ 個人的にはまだLibz Blitzが不十分なのと開発の敷居が下がってないなとは思うが、 チーム的にはおおむね達成されたって認識なのかね?
- 551 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 23:10:11.64 ID:ke4WkGne.net]
- Rust Christmas I gave you my heart
- 552 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 23:12:52.22 ID:Yy5Ib13l.net]
- >>527
firefox os載ってるパナソニックのテレビが 最近投げ売りを見るようになってきたから試せるぜ。
- 553 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 23:18:18.33 ID:AgcUAg+9.net]
- rustでググるとゲームのrustのほうが出てきた気がしてたがプログラミング言語のrustのほうが出てくるようになった
- 554 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 01:15:11.44 ID:amicdpkk.net]
- >>539
嫌いじゃない
- 555 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 21:17:01.81 ID:xKPVoTzN.net]
- 結局RustはKotlinとかSwiftと比べて何が良いのか
純粋に言語として ライフタイムとかはコストに見合ってるのか
- 556 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 21:18:48.87 ID:d0gulbrz.net]
- >>543
汎用性ならKotlin Rustは特化型
- 557 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 21:19:18.87 ID:d0gulbrz.net]
- そもそも「安全で高速に低レベルな事をする言語」だからね
- 558 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 22:58:45.45 ID:4xHQMB5H.net]
- enumがtagged unionだから分岐と構造化束縛時の
スタック操作ばっかになって素直に書くと遅い。 cursesで描画してもそこそこ遅い。 cならuntagged unionだから想定してないメンバに アクセスしたら落とせばいいからここまで遅くならないよ。 安全な抽象化にそれなりのコストかかってる。
- 559 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 23:19:26.65 ID:/fea/C1E.net]
- その速度比較に使ったRustとC++のそれぞれのソースコードplz
- 560 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 23:31:01.92 ID:BOF70SMI.net]
- untagged unionで想定してないメンバにアクセスしたときに落とすためにはtag必要では
- 561 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 23:34:48.96 ID:TM/+0evy.net]
- Cのenumを使いたいならbitflagsでやる方が良いかなと今のところ思ってる
- 562 名前:デフォルトの名無しさん mailto:sage [2017/12/26(火) 00:30:52.01 ID:UK4eFYlP.net]
- 今日日パソコンはとても高速なわけだが
Rustでcurses使うと気になるほど遅くなるのか?
- 563 名前:デフォルトの名無しさん mailto:sage [2017/12/26(火) 02:21:08.27 ID:MIW2tV/6.net]
- >>546
>cならuntagged unionだから想定してないメンバに >アクセスしたら落とせばいいからここまで遅くならないよ。 きちんと落ちるのなら苦労はしてない。 落ちないでスタックぶっ壊しながら突き進むから苦労してるんだろ。 スタック壊されるデメリットに比べればtagged unionのコストなんて安いもの。
- 564 名前:デフォルトの名無しさん mailto:sage [2017/12/26(火) 02:29:45.01 ID:2mEdN5M0.net]
- そもそもrust stableにもunionは入ってるんでお好きに使うがいいやってのと、
「想定してないメンバにアクセスしたら」ってどう判断すんのって疑問が残る タグに相当するものを自作してもいいけど、そこまで気にする程のオーバーヘッドを感じたことが無い
- 565 名前:デフォルトの名無しさん mailto:sage [2017/12/26(火) 03:05:26.84 ID:wnOOkvy2.net]
- 数百万回まわしてナノ秒単位で測るマイクロベンチマークならともかく、cursesで違いが分かるとか、ありえんわ
- 566 名前:デフォルトの名無しさん mailto:sage [2017/12/26(火) 12:24:50.36 ID:MBQNrtsd.net]
- 今時のマシンでcurses使うと遅いっていう人間、明らかにニュータイプでは?
もしRustで標準入出力が目に見えて遅いって話なら、 単純に標準入出力のロックに無頓着ってだけのオチだと思う
- 567 名前:デフォルトの名無しさん mailto:sage [2017/12/26(火) 15:07:09.73 .net]
- >>545
夢みたいじゃないか!
- 568 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 20:32:09.45 ID:Pbe3xhzg.net]
- @HiraokaTakuya
Rust で C++ の non type template arguments使いたい時は、適当に中身無しの struct 作るしかないんかな〜(´・_・`) 午後1:18 · 2017年12月29日 他人のツイートなんだけど僕も気になるから教えて(´・_・`)
- 569 名前:デフォルトの名無しさん [2018/01/01(月) 03:23:35.09 ID:CPUGDh/w.net]
- これ?
Pre-RFC: Integer Templating - internals - Rust Internals https://internals.rust-lang.org/t/pre-rfc-integer-templating/2974
- 570 名前:デフォルトの名無しさん mailto:sage [2018/01/01(月) 06:07:12.08 ID:eODIGKc2.net]
- C++ の template<int N> か。
これが使えれば、 impl<T> Hoge for [T; 0] impl<T> Hoge for [T; 1] impl<T> Hoge for [T; 2] ... みたいなのを impl<T, N: usize> Hoge for [T; N] でまとめられるよね(と良いな)
- 571 名前:デフォルトの名無しさん mailto:sage [2018/01/02(火) 01:05:03.64 ID:tEjF/+vh.net]
- rustのジェネレータってasync function用のコンテキストスイッチしないまがい物か。
ジェネレータだけだと所有権奪ってキャプチャした値返すしか出来ないから Cloneしないstd::iter::repeatくらいにしか使い道ないな。 ウォームアップしてないjsの倍程度の速度しか出ないけど resume関数は最適化で綺麗になくなるみたい。
- 572 名前:デフォルトの名無しさん mailto:sage [2018/01/02(火) 01:27:26.59 ID:D11hAiYE.net]
- ほぼtraitしか無い状態なのにそんな評価できるの?
- 573 名前:デフォルトの名無しさん [2018/01/02(火) 20:34:21.94 ID:3aikB/VZ.net]
- 型間のキャスト
https://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/casting-between-types.html これの数値キャストのとこにリンクされてるissueまだOpenのままだけど大丈夫なんですか?
- 574 名前:デフォルトの名無しさん mailto:sage [2018/01/03(水) 03:23:23.29 ID:9cEaeLyk.net]
- ターゲットごとに調整が必要だから後回しにされてんのか?
- 575 名前:デフォルトの名無しさん mailto:sage [2018/01/06(土) 15:03:12.41 ID:+G0EWjNB.net]
- Announcing Rust 1.23
https://blog.rust-lang.org/2018/01/04/Rust-1.23.html
- 576 名前:デフォルトの名無しさん [2018/01/06(土) 20:14:58.33 ID:BPUjGU8x.net]
- 今回の目玉は何?
- 577 名前:デフォルトの名無しさん mailto:sage [2018/01/06(土) 23:26:46.03 ID:+G0EWjNB.net]
- 目玉無し
- 578 名前:デフォルトの名無しさん [2018/01/06(土) 23:35:55.23 ID:iXDfk3dJ.net]
- コンパイラの最適化の改善くらいかな。
「メモリ使用量を平均で5〜10%くらい削減することに成功した」だそうだ。
- 579 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 00:56:06.77 .net]
- この言語ってC++より遅くてJavaより速い感じ?
- 580 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 07:28:23.02 ID:uw/m3vxc.net]
- 間違ってはいない。
けどc++とは僅差なのでこんな感じかな。 C++ < Rust <<< Java テキトーに書いたので異論は認める。
- 581 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 08:28:15.81 ID:N4ZmoDnH.net]
- 下手すりゃc++より速いんちゃう
- 582 名前:デフォルトの名無しさん [2018/01/07(日) 09:11:44.01 ID:uw/m3vxc.net]
- 全く同じアルゴリズムならC++のほうが速いはず。
C++のコンパイラはもう成熟してるけど、Rustのコンパイラはまだまだ改善中だから 将来的にはほとんど同じくらいになるんじゃない? まぁなんにせよ、結局はアルゴリズム次第。
- 583 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 10:36:20.02 ID:VPcvS++b.net]
- Rustに限った話ではないが世の中のアルゴリズムの大半はC/C++前提に作られているのだから
C/C++の方が速いのは当たり前。新世代で速くしたければそれにあったアルゴリズムが必要
- 584 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 11:03:31.13 ID:YhE3wbKh.net]
- >>571
トンデモだと思う
- 585 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 11:59:29.53 ID:zsxI9Sw+.net]
- 「C++がJavaより早い」というのは「大抵は」が抜けているか、「原理的には」が抜けている
C++でVMとJITは作成しないなど、 いくつかの条件が整うと C++ より Java が早いというケースも存在する 無制限にコストをかけれるという前提なら Java より C++ のほうが早い https://softwareengineering.stackexchange.com/questions/110634/why-would-it-ever-be-possible-for-java-to-be-faster-than-c
- 586 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 12:31:49.44 ID:S38kpWyE.net]
- Cは速いけどC++が速いってのは思い込みだな
- 587 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 13:40:28.36 ID:vkdahwds.net]
- c++は実装依存激しいだろ。
- 588 名前:デフォルトの名無しさん [2018/01/07(日) 14:52:58.05 ID:ztEE4sQM.net]
- >>571
なんだそりゃ…
- 589 名前:デフォルトの名無しさん [2018/01/07(日) 14:53:20.71 ID:ztEE4sQM.net]
- >>574
なんだそりゃ…
- 590 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 15:50:38.75 .net]
- CとC++の速度比 ≒ C++とRustの速度比
みたいな感じ?
- 591 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 16:38:03.27 ID:lYFenZIw.net]
- >>578
単純なCだけ頭一つ抜けてて、C++とRustはvtableやsmart pointer由来の遅さを抱えた同じグループ
- 592 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 16:57:20.32 .net]
- ありがとうございました
- 593 名前:デフォルトの名無しさん [2018/01/07(日) 18:25:18.16 ID:oRH7Tob1.net]
- 腕振り回すのが早いからって、仕事も早いと思い込んでるのが未だに居るな。
- 594 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 20:07:26.07 ID:QaVgU45N.net]
- >>579
検証結果plz 最適化コンパイラがない時代ならともかく今時のコンパイラで有意な差が出るとは思えない
- 595 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 20:12:31.97 ID:GuZkQfSu.net]
-
- 596 名前:et="_blank">>>582
pc初心者? []- [ここ壊れてます]
- 597 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 21:31:27.55 ID:sQmpVu5G.net]
- vtblと比較するならCの関数テーブルだろう
C++のスマポも必要なとこしか使わないし、使ったらその分だけ遅くなるのは当然
- 598 名前:デフォルトの名無しさん mailto:sage [2018/01/07(日) 23:35:47.39 ID:rkol6e+G.net]
- https://benchmarksgame.alioth.debian.org/u64q/rust.html
https://benchmarksgame.alioth.debian.org/u64q/compare.php?lang=rust&lang2=gpp これでいいか?
- 599 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 00:09:18.31 ID:fNfSzvO3.net]
- c++
- 600 名前:灑ustもアセンブルコード埋め込めるのだから速度を出そうと思えば出せるのでは []
- [ここ壊れてます]
- 601 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 00:56:10.81 ID:y4IOANaR.net]
- 今時、C#みたいなGC付きの言語で3Dゲームが開発できちゃう時代なんだ。
今のPCの性能を鑑みたら、C, C++, Rust の速度差なんてほとんど誤差みたいなもんだろ。 普通は気にするようなもんじゃない。 そんなわずかな差が気になるって言うのなら直にアセンブリでも書いてろよ。 ぶっちぎりで速いぞ。
- 602 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 01:09:23.55 ID:fNfSzvO3.net]
- 3DゲームってUnityのことか?Unityの内部はC#じゃなくC/C++では
- 603 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 02:09:23.80 ID:xRIQXPI+.net]
- 有能はコンパイラが上手く最適化できるコードを書く
無能はコンパイラが混乱するコードを書く Cの方が速いとか言う奴は大抵無能
- 604 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 02:29:49.41 ID:+UJAnfcM.net]
- まあそれ言い出したらそもそもそこまでcpu速度に影響ある部分なんて
少ないけどな。 ガベコレねーからrust速いってやつも スマポないからc速いってやつも 大して変わらん。
- 605 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 02:49:24.32 ID:puck2ipT.net]
- 将棋ソフトとかチェスソフトは1%でも速くしたいという需要あるんちゃう
実際stockfishをRustで書き直したら速くなったりするのかね
- 606 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 03:01:21.87 ID:88cycnja.net]
- >>591
あんまり大きいプログラムじゃないみたいだけど、内部は木構造か うーん
- 607 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 05:39:51.66 ID:PZS9kotp.net]
- >>589
それも突き詰めると絶対普段はこんなの書かねーっていうベンチマークのためだけのコードになったりするからなあ >>585は有名な話だけどソース見ると言語によっては酷いもんだぞ
- 608 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 16:00:03.99 ID:2tTEytIx.net]
- rustで書き直すぐらいならC/C++のままでいい
- 609 名前:デフォルトの名無しさん [2018/01/08(月) 16:42:57.60 ID:MR/7hfVk.net]
- 既存のC/C++コードを捨ててまで移行する価値のある言語ではないのはたしかだな
- 610 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 16:49:10.90 ID:fzq0teyP.net]
- そもそもRustが便利だと思ってるやついないだろ
C++書いたことない奴がC++より安全だの同速だの言ってヨイショする 本当にCやC++書いたことあるならただの制限厳しいだけのゴミだと分かる
- 611 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 16:54:23.84 ID:ZvHTaNmI.net]
- そう思いたいのですね
- 612 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 17:52:58.17 ID:G8CneCok.net]
- ここはアンチスレだからね。
わざわざまともな話題をここでやることはない。 本スレは過疎
- 613 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 18:53:52.23 ID:+UJAnfcM.net]
- c++ゴミ老害をマウントするために新言語が必要なんだろ。
- 614 名前:デフォルトの名無しさん [2018/01/08(月) 21:23:29.25 ID:aKL7Lo8F.net]
- >>579
速度優先なら vtable作らない smartpointer使わない
- 615 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 21:24:35.96 ID:aKL7Lo8F.net]
- >>587
ゲーム開発はできてもゲームエンジン開発はどうなの
- 616 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 22:12:41.54 ID:xRIQXPI+.net]
- 無能が生ポインタを使うとコンパイラの最適化を阻害して遅くなる
- 617 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 22:47:28.33 ID:rvM8YIeZ.net]
- >>601
横レスだけどCAPCOMのC#自社エンジンはC++でモリモリ書いてあるしC#用VMもC++で独自実装(SlideShareに確か資料があったはず) Unityだって結局ライブラリも開発環境もC++が大部分よね
- 618 名前:デフォルトの名無しさん mailto:sage [2018/01/08(月) 22:52:48.05 ID:cPU/Gv3T.net]
- カプコンのあれはゲーム用に超最適化されたGC詰んでるから…
- 619 名前:デフォルトの名無しさん [2018/01/08(月) 23:20:56.60 ID:y4IOANaR.net]
- >>588, >>601, >>603
そりゃぁ、ゲームエンジンは速度が求められるからC#じゃ力不足だろうな。 そこまで持ち出されるとグーの音も出ない。 だから「『普通は』気にするようなものじゃない」って書いた。 ゲーム作ろうとするのにゲームエンジンから自作しようとする奴なんて『普通は』いないだろ? そして、仮にゲームエンジンの開発に使うんだったとしても、 C#みたいなGC付きの言語ならともかく、C, C++, Rustの差は誤差みたいなものでしょ。 なぜなら、C++とRustの差が気になるっていうのなら、当然、C++とCとの差だって気になるはずだよな? だったらゲームエンジンの開発にC++じゃなくてCを使ってるはずだろ? でも実際にはCじゃなくてC++が使われている。 ということはゲームエンジンみたいにシビアな領域でもCとC++の差はさほど気にされていないってことになる。 ならやっぱり、C, C++, Rustの差なんて気にするようなものじゃないと言いたかった。
- 620 名前:デフォルトの名無しさん [2018/01/08(月) 23:59:18.26 ID:y4IOANaR.net]
- >>579, >>600
Rustは実装にもよるけど vtable はほとんど使わないはずだよ。 「ジェネリックとトレイト境界」を使えば引数に関しては静的ディスパッチが可能。 戻り値のほうは「ジェネリックとトレイト境界」じゃどうにもできないけど、 こっちはTagged Union 使えば大体は何とかなる。 現状、クロージャを返す場合はトレイトオブジェクトを使わざるを得ないけど、 クロージャを返すことって稀だし、そこまで気にするようなことじゃないと思ってる。 Cにはそもそもクロージャ自体が存在しないわけだし。C++でもクロージャは一般的じゃない。 smart pointer に関しても unique_ptr なら遅くはならない。(ほとんど誤差みたいなもの) だって unique_ptr は参照カウンタ使ってないし、Rallの仕組みを使って構造体(スタック)に ポインタを持ってデストラクタで解放を行ってるだけだから、その程度で遅くなるわけがない。 そして、Rustはデフォルトが C++の unique_ptr と同じだからやはり遅くはならないはず。 遅くなるのは内部で参照カウンタを使ってるshared_ptrとweek_ptrの2つ。 Rustの場合は参照カウンタは Rc or Arc として標準ライブラリに用意されてる。 まあ、Rustで Rc or Arc を全く使わずに作るってのはちょっと現実的じゃないけど。 まぁ、自分もそれほど詳しいわけじゃないけど、 vtableとsmart pointer はRustが遅い理由にはならないんじゃないかな。 RustがC, C++ と比べて少し遅い理由は他にあると思うよ。 個人的にはまだコンパイラが成熟してないってのが主な理由だと思ってるけど。 結構いっぱい書いたけど、やっぱり結論としてはC, C++, Rust の速度差は普通に使う分には気にすようなものじゃないと思う。
- 621 名前:デフォルトの名無しさん [2018/01/09(火) 00:07:21.22 ID:vsbSHK2s.net]
- >>606
訂正 week_ptr × weak_ptr ○
- 622 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 00:16:14.62 ID:BgSfBmJG.net]
- 確かに
- 623 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 08:02:08.21 ID:dghT81NU.net]
- HashTableがデフォルトで安全側に倒してSipHash使ってるのも大きい気はする
ripgrepやfont-rsなど既存の実装よりも圧倒的に高速なrust実装もあるし、言語自体の差と言うよりも、書き方の差だと思う constexpr周りはDやC++の方が充実しているけど、build.rsなどで代替できなくもないと思う
- 624 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 09:33:53.22 ID:4EiQrQ8s.net]
- Unityが出てからC#でゲーム書く人が増えたわけだし、どこかの企業が気合い入れてRustサポートしたエンジン作れば使ってみる人も増えるやろ
- 625 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 10:25:16.50 ID:vtbi2ENx.net]
- 速さの差を気にする必要はないとかいう奴って
普段どんなところでコード書いてるプログラマなんだ? プログラマなら一番速い選択するべきだろ
- 626 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 10:36:54.87 ID:pRblgKD+.net]
- かけれるコストが一定という制約で一番速くなる言語を選ぶと結果は変わるんだよ
- 627 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 10:59:57.42 ID:e9VuKocG.net]
- >>611
「速さ」にも何種類かあるのは理解してる? 最近は開発スピード優先だろ。
- 628 名前:デフォルトの名無しさん [2018/01/09(火) 12:31:14.96 ID:hZWQBtrg.net]
- 開発スピード優先とは言っても
アルゴリズムや計算量知らないで とんでもない糞コード書く香具師はいる
- 629 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 13:00:20.99 ID:CtLIzYrP.net]
- そりゃ論外だ。
開発言語の問題じゃない。開発手法は少しは関係あるか。
- 630 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 13:08:01.94 ID:hgVWuJUP.net]
- Rustでプログラマが意識してないのに走るランタイム処理って何かあるかな?
起動時になんか処理してる? あとは、メモリ解放時に意外とjemallocが重いとか?
- 631 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 14:20:37.33 ID:vtbi2ENx.net]
- かけれるコストを減らすのがプログラマの仕事だろうに……
処理の肝の関数をアセンブリで書くのに一週間かけるのか?
- 632 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 15:06:26.69 ID:pRblgKD+.net]
- > プログラマなら一番速い選択するべきだろ
> かけれるコストを減らすのがプログラマの仕事だろうに…… 一番速い言語を選択した上でかけれるコストを減らすという主張のようだが、 コストの上限って大抵あるのよ? 上限ないならプログラム全部アセンブリで書いた上で お好きなようにかけれるコストを減らしてください > 処理の肝の関数をアセンブリで書くのに一週間かけるのか? 元になる関数の有無、関数の規模、ボトルネックとしての割合、 複雑さ、アーキテクチャ、既存のテストコードの有無、 作業する人数、スキルと単価の前提すらなく作業時間だけ提示されても 必要なら一週間かけますとしか言えないよね?
- 633 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 15:08:41.92 ID:Im+qxt+8.net]
- >>617
> 処理の肝の関数をアセンブリで書くのに一週間かけるのか? 必要ならやるけど ふつうは、アセンブリで書くというという結論に至る前に 処理の見直しで数ヶ月試行錯誤するかな
- 634 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 15:46:18.74 ID:vtbi2ENx.net]
- 本当に必要なら
関数のアセンブリ化くらい一日でやるのがプログラマだろって話な?
- 635 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 18:36:32.15 ID:pRblgKD+.net]
- 処理の肝の関数が一日程度のアセンブリの最適化ですむ程度なら、
絶対に手を付けないな コードの保守性を考えるとむしろ害悪 ドライバのコードを一週間かけて最適化して劇的に早くしたことがあるが、 関数に対する暗黙の前提とかを見つけて、 ひらめきでニーモニックを最適化していく作業 一日程度でやることじゃない
- 636 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 20:29:59.87 ID:6UEtXwLz.net]
- 今時の高性能(で複雑な)なプロセッサの最適化はコンパイラ>人間
- 637 名前:デフォルトの名無しさん mailto:sage [2018/01/09(火) 23:11:43.33 ID:0nJMugwX.net]
- C++からRust移植で高速化!?
https://twitter.com/tanakh/status/950659594379968513
- 638 名前:デフォルトの名無しさん mailto:sage [2018/01/10(水) 00:25:27.71 ID:GZ3v7wml.net]
- 例の会社の方ですね
- 639 名前:デフォルトの名無しさん mailto:sage [2018/01/10(水) 01:04:10.48 ID:sDNuvOTB.net]
- stockfishもrustで書き直しましょう!
- 640 名前:デフォルトの名無しさん mailto:sage [2018/01/10(水) 05:48:28.54 ID:zJE5XuIr.net]
- 移植で高速化する案件ってのは、大概同じ言語で書き直しても高速化するからなあ
要するに作り直しに際して全体を見直すという行為が一番効く
- 641 名前:デフォルトの名無しさん mailto:sage [2018/01/10(水) 11:54:40.05 ID:kHYccep6.net]
- 詐欺会社の社員の言うことなんて信じるからRustなんかに飛び付くんやろなあ
- 642 名前:デフォルトの名無しさん mailto:sage [2018/01/10(水) 12:43:57.38 ID:6PCYvjwP.net]
- 気が狂ったようなレスだな
- 643 名前:デフォルトの名無しさん mailto:sage [2018/01/10(水) 15:45:01.02 ID:GLuGS5zO.net]
- >>626
お前それインタプリタ言語からコンパイル言語への移植でも同じこと言えんの?
|

|