結局C++とRustってどっちが良いの? 5traits

■ このスレッドは過去ログ倉庫に格納されています
2023/06/30(金) 21:56:35.52ID:PDIJ4aZy
「C++の色々配慮してめんどくさい感じは好きだけど、実務になったらメモリ安全性とか考えて今後Rustに変わっていくんかな」
「うだうだ言ってないで仕事で必要なのをやればいいんだよ、趣味なら好きなのやればいい」

っていう雑談スレ。

結局C++とRustってどっちが良いの? 4traits
https://mevius.5ch.net/test/read.cgi/tech/1686046386/

関連スレ(マ板): Google&MS「バグの70%はC/C++。Rustにする」
https://medaka.5ch.net/test/read.cgi/prog/1619943288/
2023/07/09(日) 07:46:09.21ID:4eXZ8lBD
>>381
可哀想だからそんなこと言ってあげるな
病気なんだから
居場所はどこにもないんだよ
2023/07/09(日) 08:32:03.98ID:kMeOQgn0
マシな流れからまたクソな流れになってきそうだな
384デフォルトの名無しさん
垢版 |
2023/07/09(日) 09:19:07.63ID:KDx9Q8HN
RustはDynamicRustみたいな感じのRustコンパイラ上で動くスクリプト言語が有っても面白いかもな。
2023/07/09(日) 11:03:32.10ID:BH58EEOI
頭のおかしいネトウヨがアンチrust側で良かった
386デフォルトの名無しさん
垢版 |
2023/07/09(日) 11:23:19.56ID:KDx9Q8HN
>>385
ネトウヨって何?
ここはRustとC,C++の比較及びその他プログラミング系の話をする板であり君の様な差別主義者は別の板に行きなよ。
387デフォルトの名無しさん
垢版 |
2023/07/09(日) 12:20:32.66ID:r53YpIy/
>>379
>この状況とRust信者の脳内心理はそっくりである。
お前さんの言動は統合失調症の患者さんとそっくりだよ
2023/07/09(日) 13:41:10.77ID:3PS2GvjM
効きすぎだろw
2023/07/09(日) 14:20:00.41ID:5sT0qDGq
Rustなら失敗しなかったと思う割とマジで
https://www.youtube.com/watch?v=XDy0dqZrbN4
2023/07/09(日) 14:21:39.84ID:jB1Be+SF
だれもRustの使用を強制してないのに強制されてると思い込んでるあたりが危険だな…

どこかの大臣が「Rustの利便性向上のためにC++コンパイラを廃止します」とか言い出したら騒いでもいいけど
391デフォルトの名無しさん
垢版 |
2023/07/09(日) 14:30:11.62ID:5sT0qDGq
>>337
Rustが安全であるという考え方が最も危険である
2023/07/09(日) 15:40:54.31ID:LeWNN8mE
>>308
それが本当なら水虫言語じゃん
2023/07/09(日) 15:57:49.89ID:4eXZ8lBD
糖質だから仕方ない
誰からも必要とされてないことすら気がつかないのだから
2023/07/09(日) 16:23:35.82ID:JjLC50DJ
RustがC/C++に似ているとか、構文が便利だとか本気で思っている
方が統合失調症だ。病院で見てもらえ。
395デフォルトの名無しさん
垢版 |
2023/07/09(日) 18:47:10.60ID:KDx9Q8HN
Rustが爆発的に飛躍するには何が足りないの?
2023/07/09(日) 19:01:36.68ID:/ahYiZL6
学習コスト低減、ライブラリ作成支援
何よりもRustの案件・求人の増加
2023/07/09(日) 19:08:06.34ID:4eXZ8lBD
誰からも必要とされてない人
今日もよく喋るな
2023/07/09(日) 19:43:24.19ID:JWK25eUy
せいぜい、人から必要とされまくって楽しい人生を謳歌しろよ。
ww
399デフォルトの名無しさん
垢版 |
2023/07/09(日) 20:02:58.84ID:KDx9Q8HN
行列積ってマルチスレッドで実装すべき?それとも、キャッシュやコピーを減らすためにシングルスレッドの方が良いのかな?
2023/07/09(日) 20:44:21.03ID:To34JzcQ
GPUに投げるべき
2023/07/09(日) 20:46:14.43ID:To34JzcQ
真面目な話するとプロファイル取ってサイズで分岐すればいいんじゃないすかね
2023/07/09(日) 21:34:02.14ID:xOIWVRNM
>>399
parallel=trueみたいなオプションをどこかに書けばスレッド使うようにする
403デフォルトの名無しさん
垢版 |
2023/07/09(日) 21:55:27.03ID:KDx9Q8HN
>>400
GPUを使った並列演算処理を提供するRustのクレートで良いのは何?できれば、GPUのデバイスによらずに操作が抽象化されてるものが良いな。
2023/07/09(日) 23:36:02.19ID:wAJ5czLT
四次元ポケットがあるかのような話だな…
2023/07/09(日) 23:43:54.14ID:e+9JuWWy
C++にはあるんじゃね?
406デフォルトの名無しさん
垢版 |
2023/07/09(日) 23:57:17.50ID:KDx9Q8HN
rust-gpuとかいうクレートはどうなの?これはcudaがないと動作しない感じ?
2023/07/10(月) 00:29:46.98ID:fziS9tUP
CUDAとかOpenCLとか書かれているから、CUDAでなくても動くんじゃね?
2023/07/10(月) 01:25:56.97ID:h4dg/BEy
GPUは考えなくて良いと思う
まずはCPUのシングルノードで性能を出すことが大事
GPU使えるなら現状は生のCUDAやpytorch使うので
2023/07/10(月) 02:08:14.76ID:gFGbWr8l
どうしてOSSの人って自分が良い事してると思ってるのか。
競合企業には悪魔なのに。
410デフォルトの名無しさん
垢版 |
2023/07/10(月) 08:11:40.21ID:ZGeN7ohp
慈善でやってると思ってる阿呆
411デフォルトの名無しさん
垢版 |
2023/07/10(月) 10:33:54.78ID:Xcne1xaV
>>408
現状ではnumpyではCPUってどれくらい効率的に使用できてるの?
2023/07/10(月) 11:38:27.06ID:ikEhHQu8
>>409
OSSはOSSの仲間に寄与してるんであって、
おそらく適価でソフトを売ってくれないだろう競合企業とはなんら関係を持たないからね
2023/07/10(月) 11:50:27.92ID:g81ZTmTB
>>409
お,無根拠なOSS批判だ
414デフォルトの名無しさん
垢版 |
2023/07/10(月) 12:17:50.81ID:6RMJuu71
>>320
「料理を自由にやられたら料理人が困るだろ!」
「レシピを共有するやつはカルトだ!左翼だ!」
って言ってるようなもの
料理人は家庭では難しい料理をつくるなり
サービスで付加価値をつけるなり
マネタイズ方法はいくらでもある
2023/07/10(月) 13:15:01.70ID:5iSLO28B
>>356
ChatGPTωには無理ωωω
416デフォルトの名無しさん
垢版 |
2023/07/10(月) 13:36:14.40ID:5iSLO28B
>>395
信者が足りない
逆に多過ぎるのはcrates.io
もっと整理するべき
417デフォルトの名無しさん
垢版 |
2023/07/10(月) 13:37:15.38ID:5iSLO28B
>>400
それ
418デフォルトの名無しさん
垢版 |
2023/07/10(月) 13:38:07.30ID:5iSLO28B
>>403
NdArray
BLAS
2023/07/10(月) 15:10:35.46ID:h4dg/BEy
>>411
君の言う効率的の意味が単純に速度ということなら
全てin-place演算子かつ同じメモリを使い回すような書き方をすればキャッシュヒット率が高くなり
ベクトル演算を使うので生のCで書くより速い
rustでこの速度と同等まで持っていくのはなかなかしんどいが
非同期IOやスレッドを組み合わせることで
大規模な演算では上をいける可能性はなくはない
2023/07/10(月) 15:36:45.51ID:Y/mmaJD9
例えばメモリに乗らないようなクソでかい行列の積が上げられる
MMLなどの学習時に使われる多次元配列は普通にやるとメモリに乗らないので
ファイルに吐くことになる
その時非同期IOやスレッドを駆使できるrustの方が速くなるのではないかと思う
2023/07/10(月) 16:19:14.48ID:ikEhHQu8
普通にやるとメモリに乗らないので、モンスターマシンを使う、とかじゃないん。
2023/07/10(月) 16:28:12.83ID:K2YeESBC
ファイルなら無限大
2023/07/10(月) 16:33:34.04ID:h4dg/BEy
>>421
それをやれるのは一部の企業のみ
LLMは推論だけでGPUメモリが数百G必要だからね
424デフォルトの名無しさん
垢版 |
2023/07/10(月) 20:18:27.95ID:Gb5m/Q1F
Rustで5ちゃんみたいな掲示板作れないの?
2023/07/10(月) 20:35:07.61ID:B9xklitj
当然作れるけど言語に関係なく
無数にSNSがある状況で宣伝資本がなければ集客が無理
さらに犯罪予告から怒涛の妨害書き込みへの対処が面倒
426デフォルトの名無しさん
垢版 |
2023/07/10(月) 21:19:10.81ID:HuRNpvAr
とりあえずrust純正の多次元配列の実装の以下の感じでやって行こうと思う。

シングルスレッドでの多次元配列の演算の実装
         ⬇
CPUベースのマルチスレッド(rayonとtokioを主に使用)での演算の最適化の実装
         ⬇
requires_gradの実装(これもマルチスレッドでの計算最適化を適用。)
         ⬇
余裕があればGPUベースの並列演算機能も実装。これはできればcudaがなくともGPUの種類によらない計算ができるようにしたい。
427デフォルトの名無しさん
垢版 |
2023/07/10(月) 22:41:22.83ID:HuRNpvAr
Numpyは多次元配列の中身を1次元配列に変換して持っているけど、多次元インデックスから内部の配列の対応するインデックスを一々計算してるのかなぁ?
2023/07/10(月) 23:45:11.15ID:nKw3UH6a
行とか列に沿って数値処理する計算ならインデクスを一定間隔でずらせばいいでしょ
ランダムアクセスならどうしようもないけど
2023/07/11(火) 00:08:55.75ID:hvAV/O5o
>>423
そんな状態では、学習に莫大な時間が掛かり、
恐らく結果が10年後とかになる。
2023/07/11(火) 00:10:24.53ID:hvAV/O5o
それと、数100Gバイト 位なら、スパコンならRAMにおいて
問題ないだろう。
2023/07/11(火) 00:13:54.90ID:ZJ6seY0P
M*Nの巨大なメモリを一気に確保できる範囲内ならばそれが可能だけど無理な場合もありそう
例えばM=N=100万とすると
1要素64bitとして1列分は64MBだけど
行列全体は64TBだね
2023/07/11(火) 00:21:06.99ID:hvAV/O5o
>>414
それとはかなり違う。
料理の場合:
1. 本当に優れた料理人のレシピは公開されて無い。
(もし公開されている、とされていても、本物かどうか分からない。)
2. レシピがあっても、腕が無いと作れない。
3. 仮に作れても、手間がかかるので料金を払ってでも、作ってもらって
 食べたい人が大勢いる。

ソフトウェアの場合、特に 3 の部分が全く違っていて、
簡単にコピーできてしまう特徴がある。
2023/07/11(火) 00:28:20.56ID:hvAV/O5o
>>431
どうやってるんだろうな。
熱力学や統計力学などの物理学や数学を駆使してるんだろう。
恐らく、幾何学的に距離が遠すぎる結合は 0 と仮定しているんじゃなかろうか。
脳もそうだろうし。
2023/07/11(火) 02:04:14.13ID:pWql3Z3H
>>429
複数ノード使えばなんの問題もない
今のスパコンはほぼそれ
俺が普段やってる流体や量子化学計算も
32コア程度のマシンを複数台で1週間計算したりしてる
今のpytorchはasync使ってないから行列計算を並行してできるところも全てブロックしてる
GPUへの転送もブロックする処理をしてる
シングルノードで超高性能のGPUで力技で計算するというのは普通の企業では難しい
クラウド使っても費用が半端ない
CPUでの高速化を実現しコストを下げることができれば次のステージへ行ける

なんか運営でゴタゴタが起きてるらしく
スレの読み込みができなくなったから改善しないと今後は書き込まないかも
2023/07/11(火) 02:39:20.70ID:ZJ6seY0P
>>434
専ブラ何使ってる?
各種スレ読み込み方法見つかってるよ
例えばchmateならばこうするらしい
設定メニュー→URLを指定して開く
http://mevius.5Ch.net/tech/
※注意 5chが大文字で5Ch
2023/07/11(火) 03:35:24.17ID:pWql3Z3H
とりあえずスクリプトで書き込めるので雑に書く
シングルノードで性能を出すのは意外と難しい
コア数=スレッドという単純なものではないから
OSのスレッドや他のアプリも多数のスレッドが動いている
コア数を最大限活かすというのはとにかく計測することでしか最適解を出せない
最近のCPUはハイパースレッディングという技術があり
これを使うと各コアで一つ以上のスレッドを動かすことができる
このようにCPUはまだまだ無限の可能性を秘めている
ベクトル演算もこれまで全く活用されてこなかった
さらに非同期IOを組み合わせればさらに待ち時間を減らせる
いまCPUが熱い
437デフォルトの名無しさん
垢版 |
2023/07/11(火) 07:16:15.54ID:VTWwffnW
コピペルナーV6
2023/07/11(火) 11:18:17.20ID:heSsZz8c
>>433
その能力では重力波観測出来ないな
2023/07/11(火) 11:34:55.16ID:heSsZz8c
>>435
https://agree.5ch.net/test/read.cgi/operate/9240230711/
440デフォルトの名無しさん
垢版 |
2023/07/11(火) 16:25:11.26ID:pWql3Z3H
テスト
441デフォルトの名無しさん
垢版 |
2023/07/11(火) 17:19:00.53ID:QLD1ZTwR
>>299
おまえが生まれてから日本が没落していった。
つまり、全部おまえのせいだよ。
2023/07/11(火) 18:29:18.59ID:dW46lKMj
>>441
俺の影響力はそんなに大きくないが、オープンソースの影響力は
大きいから、日本没落の原因は後者である可能性は有るが、
俺の影響である可能性は無いだろう。
2023/07/11(火) 19:54:59.41ID:UcX6nu3h
jane styleはOSSをクローズにしてやりたい放題やって
こんなに迷惑をかけている
2023/07/11(火) 20:33:49.40ID:FPwSRARi
確かこんな経緯だっけ?

Janeは元々オープンソースのおかげで便利な特徴ある亜種が豊富にある閲覧ブラウザ

Jane Styleはその亜種の中の一つだがソース非公開

当時2ch/5chは各スレのデータが*.datファイルとしてオープンデータなAPIだったので自由に多種多様な閲覧ブラウザが作られていた

ところがある時Jane Style側が5chにクローズドなAPI化で広告必須にして儲ける提案を持ちかけた

Jane Style側が管轄する5ch APIが誕生しJane Style側と契約しない多くのブラウザが締め出されStyle以外の各種Janeは全滅

数年間経過

Jane Style側が5ch APIを突如閉鎖して新掲示板Talkへ誘導

5chは対抗処置として各スレの*.datファイルを再びオープンデータとし自由な閲覧ブラウザの参入を呼び掛け
2023/07/11(火) 22:45:13.05ID:IUx5aYIs
>>444
なるほどー
そういうことだったのか
2023/07/11(火) 22:55:33.99ID:0HX/1I5L
5chは終わりだな
talkに移住したほうが良さげ
2023/07/11(火) 23:05:48.32ID:IUx5aYIs
Jane Styleがユーザー数一番多いのかな?
ざっと何%くらいなんだろう?
448デフォルトの名無しさん
垢版 |
2023/07/11(火) 23:11:31.90ID:8n82Mx+O
>>446
向こうは誰もいない
向こうでもこのスレ立ってるが書き込み無し
449デフォルトの名無しさん
垢版 |
2023/07/12(水) 00:52:13.10ID:NJFIcEQ6
>>433
統計力学と熱力学の勉強を大学でやったけど、これをメモリに応用する方法とか全く検討つかないんだけど、どうやんの?
450デフォルトの名無しさん
垢版 |
2023/07/12(水) 01:12:01.30ID:w0UvOxDC
>>432
掲示板のマネタイズはどう考えてるのかな?
プログラマは掲示板のソースコードを書いているのだから
掲示板は会員制にして課金しなければ
その「水源」とやらは「枯渇」しないのかな?w
451デフォルトの名無しさん
垢版 |
2023/07/12(水) 06:44:12.72ID:GThgJXoz
.try_into().unwrap()
なにこれ超めんどくさいんだけど

だっさ
452デフォルトの名無しさん
垢版 |
2023/07/12(水) 07:27:41.45ID:40CzoJJP
課金したら閲覧者が枯渇
2023/07/12(水) 13:39:50.28ID:JEmfvhKm
>>449
今回は、AIの機械学習の話だから、ニューラルネットワーク限定。
シナプス結合が、「ほぼ 0」とみなせるようなニューロン対が
有るのだと思われる。
それを理論的に見つけるために熱力学や統計力学が使えるのではないかと
思われる。
実際、最近の機械学習では熱力学からヒントを得ていると聞いている。
2023/07/12(水) 13:47:41.55ID:JEmfvhKm
>>450
ソフトウェア自体を販売する場合の水源が枯渇すると言っている
のであって、(広告料を収入源とすることが多い)オンラインサービス
のことは言って無い。
2023/07/12(水) 14:03:47.08ID:75WTF1Df
大工の源さんは枯渇したよ
2023/07/12(水) 16:36:21.89ID:EH/jRxPW
すっかり人が減ったな
イーロンマスクがいかに優秀だったかわかるな
ひろゆきの言うようにtwitterは致命的な状態にはなってないんだよ
457デフォルトの名無しさん
垢版 |
2023/07/12(水) 16:43:02.15ID:V7YD2kGE
統計学や熱力学とは別に
統計熱力学という分野があって量子力学のツールになっている
458デフォルトの名無しさん
垢版 |
2023/07/12(水) 16:48:07.57ID:eYJFNCYr
>>454
そんなとこに水は既にないのだから
雨乞いなどせずに水源を探せ
情けない
2023/07/12(水) 16:49:01.89ID:EH/jRxPW
>>453
もうそれとっくに発明されてるぞ
ボルツマンマシンとか統計力学から生み出されたニューラルネットワークだ
もう現在ではほぼ使われてない
2023/07/12(水) 18:25:50.72ID:IrwEnPUh
>>458
問題は、需要はあるのに生産できないことに有る。
2023/07/12(水) 18:27:53.63ID:IrwEnPUh
>>460
需要はあり、しかも、技術的は生産可能。しかし、OSS
とGoogleが邪魔するせいで生産できない。しかし、
現在は存在せず。人々は欲しいのに商品が無い。しかし、
商品は技術的には製造可能。しかし、邪魔する人のせいで
製造不可能。
2023/07/12(水) 18:29:50.07ID:IrwEnPUh
OSSの問題点は、需要があるのに、全く生産されないか、
または、生産されてもちゃんとしたものではない。
しかし、ちゃんとしたものを生産すると、すぐにそれを真似て
無料化したものが出てくるから、ちゃんとしたものを生産できない
というジレンマが生じていること。
それが悪循環になっている。
2023/07/12(水) 19:11:00.67ID:l4X7BbNV
で、クローズドでマネタイズしようとした5chとかjanestyleはどうなりましたか?
2023/07/12(水) 20:33:00.31ID:j8K/hPwF
コードとサービスをごっちゃにしてて草
465デフォルトの名無しさん
垢版 |
2023/07/12(水) 23:01:21.25ID:NJFIcEQ6
OSSの開発者はそれ単体でマネタイズしようとか基本的に考えてないだろう。自分の事業への資金の呼び水にしたいとかとか、キャリアアップに利用したいとか、純粋にボランティアとか色々事情があるだろ。
466デフォルトの名無しさん
垢版 |
2023/07/12(水) 23:20:30.70ID:w0UvOxDC
自分が多様な世界に適応する能力がないのを
多様な世界に原因がある
世界は一様であるべきと言っているだけだよ
よくある症状だよ
467デフォルトの名無しさん
垢版 |
2023/07/12(水) 23:51:54.82ID:NJFIcEQ6
Ndarray構造体に演算を実装しているんだけどバグがあった。具体的には
nar += &narとか nar = &nar * &nar
が所有権の関係でできないことが分かった。
ndarrayクレートではこれってどうやって解決してんの?
2023/07/13(木) 00:26:15.94ID:6kUdjFSi
ほれはよRust製の専ブラ作れよ
それともRustってRADには不向きかな?
2023/07/13(木) 01:26:33.09ID:UHgHd+Ew
>>467
ndarrayの実装は知らないけど標準ライブラリ(std::ops)を参考に

AddAssignの方は
impl AddAssign<Self> for Foo
impl AddAssign<&Self> for Foo
を両方実装する
(impl AddAssignだけだとデフォルト(<Rhs=Self>)で1番目になってる)
1番目の実装の処理は2番目の実装に丸投げできるはず

Mulの方は
impl Mul<Foo> for Foo
impl Mul<&Foo> for Foo
impl<'a> Mul<Foo> for &'a Foo
impl<'a> Mul<&Foo> for &'a Foo
を全部実装する
上の3つは1番下の実装に丸投げできるはず

forward_ref_binopとかいうマクロがあるらしいけどCopy型前提みたいだから使えなそう
(Copy型だと下の3つを1番上の実装に丸投げできる)
MulとかFooのバリエーションが多くなると丸投げ部分のコードをマクロで生成しないとしんどい
2023/07/13(木) 02:25:19.98ID:XmwQUPfG
>>467
そのものズバリの演算子はない?
Zipを使えば以下のようにできるみたい

let mut vec = Array1::from_elem(10, 1.);
Zip::from(&mut vec).for_each(|vec| {
*vec += *vec;
});
2023/07/13(木) 02:38:27.81ID:XmwQUPfG
このfor_eachがベクトル演算を使ったループになれば良い感じかも
ただ泥臭過ぎて面倒だな
2023/07/13(木) 07:43:06.44ID:kV5XLHA0
Announcing Windows 11 Insider Preview Build 25905
https://blogs.windows.com/windows-insider/2023/07/12/announcing-windows-11-insider-preview-build-25905/

Rust offers advantages in reliability and security over traditional programs written in C/C++. This preview shipped with an early implementation of critical kernel features in safe Rust. Specifically, win32kbase_rs.sys contains a new implementation of GDI region. While this is a small trial, we will continue to increase the usage of Rust in the kernel. Stay tuned!
2023/07/13(木) 08:55:33.76ID:Oq+5RtyL
おいおい昨日25393落としたばっかだぞw (まだ入れてない
早速覗いてみるかな、(最終的に)pdbどうなってるんかしらん

C++にもunsafe{ }はよ
2023/07/13(木) 10:59:52.32ID:nV7PXIXO
Rust AIすげー
https://www.youtube.com/watch?v=mYmWimr0Jd4
2023/07/13(木) 13:28:05.75ID:GXWOfs8o
予言しよう。Rustは絶対流行らない。
2023/07/13(木) 13:54:46.62ID:GXWOfs8o
>>466
それは、技術系をやめて、営業や農業で食っていけばいい的な発想。
ネットサービスだけでは日本は没落する。
477デフォルトの名無しさん
垢版 |
2023/07/13(木) 13:59:36.78ID:aSyZRdNR
>>476
そもそも、IT技術では日本はアメリカに比べて環境的に圧倒的にゴミで、技術者の数も少なくて、技術自体もアレなのに、IT技術で日本再興とか非現実的だろ。IT技術は蓄積なんで、一回周回遅れになった日本がITで没落を避けれる訳ないじゃん。君は何を目指してんの?
2023/07/13(木) 14:09:35.65ID:GXWOfs8o
いまだにトヨタ車一本で未来までいけるとでも思ってるんだろうか、
この人は。
479デフォルトの名無しさん
垢版 |
2023/07/13(木) 14:15:03.35ID:aSyZRdNR
日本は得意な量子コンピューターとかに注力すれば良いじゃん。間違いなく次世代のゲームチェンジャー的技術だし。日本の量子コンピューターの技術はアメリカと比べてもかなり悪くない位置にいると思うよ。
2023/07/13(木) 14:18:09.38ID:Oq+5RtyL
>>475
webのほうでは十分生き残りそう、なんとなくね
2023/07/13(木) 14:22:14.94ID:GXWOfs8o
>>479
そういう国家レベルで行なわれるようなものはアメリカに抜かれる。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況