前スレ
C++相談室 part160
https://mevius.5ch.net/test/read.cgi/tech/1649979572/
C++相談室 part161
■ このスレッドは過去ログ倉庫に格納されています
2022/05/21(土) 21:23:29.59ID:kYXfaM+5
206デフォルトの名無しさん
2022/06/15(水) 22:34:39.36ID:Z7kfo4VR Linuxのスレッドはプロセスだと聞いた
207はちみつ餃子 ◆8X2XSCHEME
2022/06/15(水) 22:56:22.65ID:VY0KZJ3n そのへんは色んな論が合って今の主流がどうなってんのかよくわからん。
でも一度はプロセスを軽くする方向 (スレッドの実態をプロセスとする方向) になったというのは私も聞いたことがあるような気がする。
(BSD 系の話と混ざってるような気もする。 だいぶんうろ覚え。)
プロセスを軽くするというよりは段階を分けるというか、
プロセスをスレッド的な範囲で使っている分にはスレッド程度の処理しかしないみたいな感じ。
ただ、それは最終的には管理コストが思ったより大きくてそれほど効果的ではないというオチじゃなかったっけ?
でも一度はプロセスを軽くする方向 (スレッドの実態をプロセスとする方向) になったというのは私も聞いたことがあるような気がする。
(BSD 系の話と混ざってるような気もする。 だいぶんうろ覚え。)
プロセスを軽くするというよりは段階を分けるというか、
プロセスをスレッド的な範囲で使っている分にはスレッド程度の処理しかしないみたいな感じ。
ただ、それは最終的には管理コストが思ったより大きくてそれほど効果的ではないというオチじゃなかったっけ?
208デフォルトの名無しさん
2022/06/15(水) 23:10:10.79ID:vqdnmmaI >>203
OSのカーネルスレッドの実装の話だ
OSのカーネルスレッドの実装の話だ
209デフォルトの名無しさん
2022/06/15(水) 23:14:22.38ID:8Ciw/luQ forkもCoWがあるからオーバーヘッド大したことないんだっけ?
210デフォルトの名無しさん
2022/06/16(木) 06:09:16.40ID:acnLqVz4211デフォルトの名無しさん
2022/06/16(木) 06:36:56.71ID:GA9mXaJg212デフォルトの名無しさん
2022/06/16(木) 07:01:31.35ID:ilsRfae9 >>199
ユニプロセッサでも例えばI/O待ちやユーザ入力待ちしている間にできることをやっとくんだよ
ユニプロセッサでも例えばI/O待ちやユーザ入力待ちしている間にできることをやっとくんだよ
213デフォルトの名無しさん
2022/06/16(木) 07:17:28.07ID:lg2Mpz7e 例えばシングルスレッドのみを利用のサーバーでも
その中で非同期タスクを1万個動かしてクライアント同時接続1万個の処理が可能
ほとんどがネットワーク待ちとディスク待ちだから非同期ならばそれだけ同時に並行処理(≠並列処理)できる
その中で非同期タスクを1万個動かしてクライアント同時接続1万個の処理が可能
ほとんどがネットワーク待ちとディスク待ちだから非同期ならばそれだけ同時に並行処理(≠並列処理)できる
214デフォルトの名無しさん
2022/06/16(木) 07:30:29.25ID:lg2Mpz7e もし同期プログラミングしか出来ないと
その多数のクライアントを捌くためにスレッド数を増やすことで対応することになるが
スレッドリソースを喰うため大きいためスレッド数を増やせず
スレッドスイッチングも重いため圧倒的に不利となってしまう
その多数のクライアントを捌くためにスレッド数を増やすことで対応することになるが
スレッドリソースを喰うため大きいためスレッド数を増やせず
スレッドスイッチングも重いため圧倒的に不利となってしまう
215デフォルトの名無しさん
2022/06/16(木) 08:51:16.63ID:ilsRfae9 ネットのサーバーは本質的にマルチタスクで
たとえシングルで力技かましてても外から見て複数のタスクを同時にこなしている
たとえシングルで力技かましてても外から見て複数のタスクを同時にこなしている
216デフォルトの名無しさん
2022/06/16(木) 09:12:07.56ID:LWbVArCN 1対1スレッドがマルチプロセッサ使えて実装が楽で悪いことないよね
217デフォルトの名無しさん
2022/06/16(木) 09:53:32.18ID:JxXqg7BH218デフォルトの名無しさん
2022/06/16(木) 10:11:35.67ID:LWbVArCN >>217
非同期のスレッドってどういうのを指すの?
非同期のスレッドってどういうのを指すの?
219デフォルトの名無しさん
2022/06/16(木) 11:53:53.45ID:ilsRfae9 マルチスレッドは基本的に非同期だけどな
必要に応じてミューテックスやシグナルで待ち合わせする
必要に応じてミューテックスやシグナルで待ち合わせする
220デフォルトの名無しさん
2022/06/16(木) 16:20:36.89ID:OqC2jk+r ノンブロッキング=非同期でいいのかな
221デフォルトの名無しさん
2022/06/16(木) 16:31:27.35ID:WGtrzJPY いいよ違うけど
222デフォルトの名無しさん
2022/06/16(木) 17:24:48.01ID:Vxm/sO96 しかしまあどこかにライブラリを作ってる人がいるんだけど、その事実を認識できんプログラマというのはおるよな
223デフォルトの名無しさん
2022/06/16(木) 17:38:45.90ID:5Mp0JkOM ジャップにはOSS読んだり一次情報確認しにいく文化がそもそも無いからな
224デフォルトの名無しさん
2022/06/16(木) 17:39:26.55ID:T9ZCQ85W 非同期プログラミングでは多くの言語でPromiseもしくはFutureと呼ばれる同じ概念の抽象化を用いて行なう
つまりこれから行われることを期待する未来の約束という抽象化したものに次々と託していくことで
プログラムコードの見かけ上の記述順とは異なり並行して非同期に複数のタスクが走ることで非常に効率的に実行
それらは一つのスレッド内で何十も何千も非同期に並行して動かすことが可能であるがマルチスレッドを使えばさらにそのコア数倍を動かせる
>>216
それだと効率が悪すぎてお子様向け
つまりこれから行われることを期待する未来の約束という抽象化したものに次々と託していくことで
プログラムコードの見かけ上の記述順とは異なり並行して非同期に複数のタスクが走ることで非常に効率的に実行
それらは一つのスレッド内で何十も何千も非同期に並行して動かすことが可能であるがマルチスレッドを使えばさらにそのコア数倍を動かせる
>>216
それだと効率が悪すぎてお子様向け
225デフォルトの名無しさん
2022/06/17(金) 01:35:07.48ID:UGOae7/Q プログラマー目指してるんですが、C++やるなら03と11の両方勉強しておいた方がいいですか?
226デフォルトの名無しさん
2022/06/17(金) 01:42:46.88ID:OGNvxC9Z はて?
C++11やればC++03もカバーしたことになるからC++11以降一択だよ
細かいことはコンパイルエラーが出てから考えればいいんだよ
C++11やればC++03もカバーしたことになるからC++11以降一択だよ
細かいことはコンパイルエラーが出てから考えればいいんだよ
227デフォルトの名無しさん
2022/06/17(金) 03:02:19.62ID:2abskYGH 今C++03の案件とかあるんかな
あっても正直関わりたくないな
あっても正直関わりたくないな
228デフォルトの名無しさん
2022/06/17(金) 05:01:48.39ID:GnlLskBw autoなしで書きたくない
229デフォルトの名無しさん
2022/06/17(金) 05:20:26.86ID:zopwF6/i 何を言うとるか
今憶えるべきはC++20に決まっとろうが
今憶えるべきはC++20に決まっとろうが
230デフォルトの名無しさん
2022/06/17(金) 09:56:39.22ID:UGOae7/Q C++11を勉強しておけば良さそうですね
独習C++をやります
ありがとうございました
独習C++をやります
ありがとうございました
231デフォルトの名無しさん
2022/06/17(金) 13:24:12.81ID:SEHo94h9 c++11で書いたコードをC++20でコンパイルしようとしたらエラー出まくりんぐ
教えてエロい人
教えてエロい人
232デフォルトの名無しさん
2022/06/17(金) 13:40:57.68ID:zopwF6/i 実例出してくれれば解説できる・・・かも知れないw
233デフォルトの名無しさん
2022/06/17(金) 14:29:06.62ID:sTQyUMOv ソースを貼らないワカランゴよ
234デフォルトの名無しさん
2022/06/17(金) 15:09:02.12ID:SEHo94h9 スマソ、C++11じゃなくてC++14だた
vector<int> unkos;
for each (auto unko in unkos) { }
これがエラー出てコンパイル通らない
環境が壊れてるんかな?
IDEはVS2022 17.2.4
vector<int> unkos;
for each (auto unko in unkos) { }
これがエラー出てコンパイル通らない
環境が壊れてるんかな?
IDEはVS2022 17.2.4
235デフォルトの名無しさん
2022/06/17(金) 15:34:14.31ID:tDJ88+fU C#かなんかと混ざってない?
vector<int> unkos;
for(auto unko : unkos) { }
vector<int> unkos;
for(auto unko : unkos) { }
236デフォルトの名無しさん
2022/06/17(金) 15:55:37.01ID:SEHo94h9 しょっちゅうC++とC#往復するから頭おかしくなるな
でもコードスニペットで自動的にfor each (auto unko in unkos)みたいな構文に補完されるんだよね
てか以前までこれでビルド通ってたし
VSのバグかな?
でもコードスニペットで自動的にfor each (auto unko in unkos)みたいな構文に補完されるんだよね
てか以前までこれでビルド通ってたし
VSのバグかな?
237蟻人間 ◆T6xkBnTXz7B0
2022/06/17(金) 16:03:50.87ID:GnCwfahh 拡張子間違ってない?
238デフォルトの名無しさん
2022/06/17(金) 16:10:31.33ID:SEHo94h9 確認したけど.cppと.hで試してる
C++17まではビルド通るけどC++20にするとエラーだわ
C++17まではビルド通るけどC++20にするとエラーだわ
239デフォルトの名無しさん
2022/06/17(金) 16:18:22.80ID:G79h5Zer C++11 以前はもう忘れていいとは思うけど
以前と以降の違いは知ってた方が良いとも思う
以前と以降の違いは知ってた方が良いとも思う
240デフォルトの名無しさん
2022/06/17(金) 16:19:50.60ID:2abskYGH for each inはmsvcの独自拡張らしいな
241デフォルトの名無しさん
2022/06/17(金) 16:20:08.55ID:G79h5Zer >C++17まではビルド通るけど
マジか?
マジか?
242デフォルトの名無しさん
2022/06/17(金) 16:38:08.56ID:SEHo94h9243デフォルトの名無しさん
2022/06/17(金) 17:16:26.61ID:iqIqAnpY 参照&とか、左辺値とか、moveとか、copyとか、体系的に学びたいんだけど、
その辺、いいKindle本ない?
オススメない?
その辺、いいKindle本ない?
オススメない?
244デフォルトの名無しさん
2022/06/17(金) 17:24:24.76ID:G79h5Zer その質問が出て来る時点で既に体系的に知ってるだろ
245デフォルトの名無しさん
2022/06/17(金) 17:42:51.03ID:2abskYGH C++の書籍紙の本ばっかだよな
ネット上のドキュメント漁れって事なんだろうけど
ネット上のドキュメント漁れって事なんだろうけど
246243
2022/06/17(金) 18:07:25.78ID:iqIqAnpY C++をclassの使えるCとしか使ってなくて(そんなに使ってない)、
んで参照&を使った左辺値?を見よう見真似で使ったんだけと、うまくいかなくて(結局ポインタを使った参照を使いました)
あとRustの本読んだらmove、copyを知って、その概念はC++でもあるとどこかで見て、体系的に知りたいと思いました。
Webだと細切れなのでKindle本で読みたいと思います。
オライリーのEffective modern C++なんか適当でしょうか?
でもKindleないんだよなぁ
んで参照&を使った左辺値?を見よう見真似で使ったんだけと、うまくいかなくて(結局ポインタを使った参照を使いました)
あとRustの本読んだらmove、copyを知って、その概念はC++でもあるとどこかで見て、体系的に知りたいと思いました。
Webだと細切れなのでKindle本で読みたいと思います。
オライリーのEffective modern C++なんか適当でしょうか?
でもKindleないんだよなぁ
247デフォルトの名無しさん
2022/06/17(金) 18:20:30.66ID:sBNVv+WO kindleはないけど
オライリーは公式に電子書籍あるよ
オライリーは公式に電子書籍あるよ
248デフォルトの名無しさん
2022/06/17(金) 18:22:00.18ID:OGNvxC9Z 所有や共有の機能が欲しいなら shared_ptr 使えば良いだけだろ
249デフォルトの名無しさん
2022/06/17(金) 18:41:26.72ID:sTQyUMOv >>234
こ、こんな裏技が((( ;゚Д゚)))
こ、こんな裏技が((( ;゚Д゚)))
250デフォルトの名無しさん
2022/06/17(金) 18:48:02.47ID:OGNvxC9Z それはつまりinが予約語になっているってことでもあるのかな
251デフォルトの名無しさん
2022/06/17(金) 18:53:09.50ID:aIhMpcwB C++/CLIなんじゃないの
252デフォルトの名無しさん
2022/06/17(金) 19:29:48.79ID:SEHo94h9 いや、たしかにC++プロジェクトやぞ
数年前から使ってるVSプロジェクトではC++14→ビルド通る、C++17→ビルド通る、C++20→エラー
今新規で作ったVSプロジェクトではC++14→エラー、C++17→エラー、C++20→エラー
意味フすぎて漏れそう
https://docs.microsoft.com/ja-jp/cpp/dotnet/for-each-in?view=msvc-170
調べたらfor each構文は非推奨とは出てきたけど
ほならね、コードスニペットで非推奨の構文出すなやと言いたい
しかもそれでビルド通らねえ
まあVSアプデが原因っぽい感じするし、大人しく推奨の構文使うようにするよ
お騒がせしてスマソ
数年前から使ってるVSプロジェクトではC++14→ビルド通る、C++17→ビルド通る、C++20→エラー
今新規で作ったVSプロジェクトではC++14→エラー、C++17→エラー、C++20→エラー
意味フすぎて漏れそう
https://docs.microsoft.com/ja-jp/cpp/dotnet/for-each-in?view=msvc-170
調べたらfor each構文は非推奨とは出てきたけど
ほならね、コードスニペットで非推奨の構文出すなやと言いたい
しかもそれでビルド通らねえ
まあVSアプデが原因っぽい感じするし、大人しく推奨の構文使うようにするよ
お騒がせしてスマソ
253デフォルトの名無しさん
2022/06/17(金) 19:38:58.95ID:bL392TY5254デフォルトの名無しさん
2022/06/17(金) 19:41:36.72ID:bL392TY5255デフォルトの名無しさん
2022/06/17(金) 19:48:56.19ID:sTQyUMOv >>254
両方使えるって書いてあるけど
> この非標準のキーワードは、C++/CLI プロジェクトと C++ ネイティブ プロジェクトの両方で使用できます。 ただし、これを使用することはお勧めしません。
両方使えるって書いてあるけど
> この非標準のキーワードは、C++/CLI プロジェクトと C++ ネイティブ プロジェクトの両方で使用できます。 ただし、これを使用することはお勧めしません。
256はちみつ餃子 ◆8X2XSCHEME
2022/06/17(金) 19:50:56.98ID:Ic1RtTnb >>246
「江添亮のC++入門」は比較的ハードルが低く基礎を理解できるように書かれてると思う。
(別途学習する前提で継承まわりをごっそりと省いたりしてるけど……)
元になった原稿は無料で公開されてて、 Markdown で書かれているので
適当なツールを使えば Kindle で読める形式にもできるんじゃないかな。
「江添亮のC++入門」は比較的ハードルが低く基礎を理解できるように書かれてると思う。
(別途学習する前提で継承まわりをごっそりと省いたりしてるけど……)
元になった原稿は無料で公開されてて、 Markdown で書かれているので
適当なツールを使えば Kindle で読める形式にもできるんじゃないかな。
257デフォルトの名無しさん
2022/06/17(金) 19:59:43.68ID:SEHo94h9 >>254
コード読めるのに文章読めないの?
コード読めるのに文章読めないの?
258デフォルトの名無しさん
2022/06/17(金) 20:05:32.50ID:wjEVmEJW C++/CLIはC++20で見捨てられてるので強制的にC++17としてコンパイルされる
昔から使ってるvcxprojなら知らん間に追加のオプションつけてたり、今のVSで規定値が変わったりしてるだろうからビルドが通らないのもありうる。
ちょっとしたプログラムならwandboxとかでgcc/clang試してみてもいいんじゃない?
MSVCは独自拡張とか、標準ライブラリでも新しいバージョンのものを先行実装してたりするよ
昔から使ってるvcxprojなら知らん間に追加のオプションつけてたり、今のVSで規定値が変わったりしてるだろうからビルドが通らないのもありうる。
ちょっとしたプログラムならwandboxとかでgcc/clang試してみてもいいんじゃない?
MSVCは独自拡張とか、標準ライブラリでも新しいバージョンのものを先行実装してたりするよ
259はちみつ餃子 ◆8X2XSCHEME
2022/06/17(金) 20:06:26.13ID:Ic1RtTnb MSVC を使ってないからよう知らんけど拡張を抑制するオプションとかないの?
260デフォルトの名無しさん
2022/06/17(金) 20:22:45.13ID:k/CpGzsk C++/CLIはC++ではないのだよ!
261デフォルトの名無しさん
2022/06/17(金) 20:37:27.17ID:2abskYGH 日本語読めない奴が多いなしかし
262デフォルトの名無しさん
2022/06/17(金) 23:05:28.99ID:nJOnHnXa C++/CLI捨てられちゃうのか
じゃあ今後C#とかとのグルーには何使えばいいの?
じゃあ今後C#とかとのグルーには何使えばいいの?
263デフォルトの名無しさん
2022/06/17(金) 23:21:00.48ID:cGGfCEhk 漢は黙ってP/Invoke
264デフォルトの名無しさん
2022/06/17(金) 23:39:45.06ID:OGNvxC9Z 中国人じゃない人はどうすればいいですか?
265デフォルトの名無しさん
2022/06/17(金) 23:43:23.56ID:+i8GyaaY 中国人に非ずば人に非ず。
266デフォルトの名無しさん
2022/06/17(金) 23:57:35.61ID:OGNvxC9Z PCREやbregonig.dllなどのPerl互換正規表現ライブラリでは、日本の漢字と中国の汉字が同じ\p{Han}に一絡げにされてるから注意しなよ
267デフォルトの名無しさん
2022/06/18(土) 20:22:14.05ID:jYGrUTdl ユニコードだからってことじゃなくて?
268デフォルトの名無しさん
2022/06/19(日) 08:07:25.77ID:w/1mSXjt www.mercari.com/jp/search/?keyword=hr400p
こういう安い中古チューナ買って、Coinyをスカパープレミアム放送のICカード化して、
スカパープレミアムのチャンネル全部見れるし、USB HDDに録画フリー。
【avoCADO】 Coiny card Part4【仮想通貨】
https://mevius.5ch.net/test/read.cgi/avi/1640762750/
こういう安い中古チューナ買って、Coinyをスカパープレミアム放送のICカード化して、
スカパープレミアムのチャンネル全部見れるし、USB HDDに録画フリー。
【avoCADO】 Coiny card Part4【仮想通貨】
https://mevius.5ch.net/test/read.cgi/avi/1640762750/
269デフォルトの名無しさん
2022/06/19(日) 09:39:07.73ID:G0R2gGHa 誤爆かな
270デフォルトの名無しさん
2022/06/19(日) 15:42:17.20ID:pCkywCXr 夏休みの自由研究の成果を今ここに発表するのぜ、
2^(2^34)-1を計算するプログラムを最終的にオリジナルの9.26倍高速化すた、
↓↓↓先週のやつ↓↓↓
■ V3: ブロック6-step algorithm適用
https://ideone.com/rFCMy5
実行時間全体: 389.157479 sec
計算時間のみ: 185.163833 sec
↓↓↓先週のやつの改良版↓↓↓
■ V3.1: ブロック6-step algorithm適用、parallel for粒度変更(粗くした)+workメモリサイズ調整
https://ideone.com/dFjPXf
実行時間全体: 349.057446 sec
計算時間のみ: 151.493976 sec
計算時間のみ比較でオリジナルの9.26倍速、
2^(2^34)-1を計算するプログラムを最終的にオリジナルの9.26倍高速化すた、
↓↓↓先週のやつ↓↓↓
■ V3: ブロック6-step algorithm適用
https://ideone.com/rFCMy5
実行時間全体: 389.157479 sec
計算時間のみ: 185.163833 sec
↓↓↓先週のやつの改良版↓↓↓
■ V3.1: ブロック6-step algorithm適用、parallel for粒度変更(粗くした)+workメモリサイズ調整
https://ideone.com/dFjPXf
実行時間全体: 349.057446 sec
計算時間のみ: 151.493976 sec
計算時間のみ比較でオリジナルの9.26倍速、
271デフォルトの名無しさん
2022/06/19(日) 15:42:37.86ID:pCkywCXr 計測条件:
CPU: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz
メモリ32 GB
OS: Windows 10 Pro 64 bit
コンパイラ: Visual Studio 2019でビルド(x64)
OpenMP 有効(omp_get_max_threads() == 8)
計算結果は最後(2^(2^34)-1)のみ出力
(↑ソースコードのSAVE_ITM_RESULTマクロ定義をコメントアウト。元に戻せば前と同じになる。)
CPU: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz
メモリ32 GB
OS: Windows 10 Pro 64 bit
コンパイラ: Visual Studio 2019でビルド(x64)
OpenMP 有効(omp_get_max_threads() == 8)
計算結果は最後(2^(2^34)-1)のみ出力
(↑ソースコードのSAVE_ITM_RESULTマクロ定義をコメントアウト。元に戻せば前と同じになる。)
272デフォルトの名無しさん
2022/06/19(日) 15:44:13.95ID:pCkywCXr つなみに同じような調子で時間計測すると、(コードはV3.1のSHOW_CSM_TIMEを参照されたい、
■ V0: オリジナル
https://ideone.com/xSaa6x
実行時間全体: 1586.875607 sec
計算時間のみ: 1403.402228 sec
■ V1: C++書き換え版
https://ideone.com/oDgjXr (※ FIGとRADIXはそれぞれ5と100000に訂正
実行時間全体: 1611.894164 sec
計算時間のみ: 1421.579748 sec
■ V2: 倍速化(バッタフライ演算で書き直したやつ。OpenMP非使用
https://ideone.com/xHSzFD
実行時間全体: 622.790273 sec
計算時間のみ: 435.143622 sec
やったわ;;;
つまりV2はV0より3.23倍速く、V3.2はV0より9.26倍速いから2^8倍を達成したのであった、
■ V0: オリジナル
https://ideone.com/xSaa6x
実行時間全体: 1586.875607 sec
計算時間のみ: 1403.402228 sec
■ V1: C++書き換え版
https://ideone.com/oDgjXr (※ FIGとRADIXはそれぞれ5と100000に訂正
実行時間全体: 1611.894164 sec
計算時間のみ: 1421.579748 sec
■ V2: 倍速化(バッタフライ演算で書き直したやつ。OpenMP非使用
https://ideone.com/xHSzFD
実行時間全体: 622.790273 sec
計算時間のみ: 435.143622 sec
やったわ;;;
つまりV2はV0より3.23倍速く、V3.2はV0より9.26倍速いから2^8倍を達成したのであった、
273デフォルトの名無しさん
2022/06/19(日) 15:57:54.28ID:pCkywCXr じつはさらにL2キャッシュ利用帯域最大化版というのを作ってみたのやが
どうもV3と同等かやや遅くなるorz
■ V3.2: L2キャッシュ利用帯域最大化版
https://ideone.com/ig7PuU
実行時間全体: 399.591214 sec
計算時間のみ: 191.301385 sec
やっていることは、NをL2キャッシュサイズの1コア割り当て分の半分に収まる複素数の数、として、
巨大桁数のFFTを(2*N×N)桁のFFTに分解して個々の(2*N×N)桁のFFTを6-step algorithmで解いているのですだが
なんかコピーしつつ転置するの回数が増えるので速くならないみたい
あとV3.1が速かったりV3.2がEXPN_L2CHACHE_SZを18からいくら増やしてもそれ以上遅くならないのは
Intel(R) Smart CacheテクノロジーがL2キャッシュとL3キャッシュ間の帯域をうまいぐあいに有効活用してくれているっぽい
ここらになってくると詳細は調べようが無いので漏れもソフトウェアー呪術者にならざるおえない
どうもV3と同等かやや遅くなるorz
■ V3.2: L2キャッシュ利用帯域最大化版
https://ideone.com/ig7PuU
実行時間全体: 399.591214 sec
計算時間のみ: 191.301385 sec
やっていることは、NをL2キャッシュサイズの1コア割り当て分の半分に収まる複素数の数、として、
巨大桁数のFFTを(2*N×N)桁のFFTに分解して個々の(2*N×N)桁のFFTを6-step algorithmで解いているのですだが
なんかコピーしつつ転置するの回数が増えるので速くならないみたい
あとV3.1が速かったりV3.2がEXPN_L2CHACHE_SZを18からいくら増やしてもそれ以上遅くならないのは
Intel(R) Smart CacheテクノロジーがL2キャッシュとL3キャッシュ間の帯域をうまいぐあいに有効活用してくれているっぽい
ここらになってくると詳細は調べようが無いので漏れもソフトウェアー呪術者にならざるおえない
274デフォルトの名無しさん
2022/06/21(火) 20:57:53.90ID:MIxQo51/ そっか頑張ったね
275デフォルトの名無しさん
2022/06/21(火) 21:17:43.90ID:EegZBjzo 相変わらず漏れとか加齢臭するスラング使ってんのか
276デフォルトの名無しさん
2022/06/21(火) 21:26:26.57ID:5USpVKBQ 初老の漏れ易いジジイなんだろ
察して差し上げろ
察して差し上げろ
277デフォルトの名無しさん
2022/06/21(火) 23:41:17.67ID:Nd0elFbL 内容に関係のないクソみたいな指摘しかできないお前らも大概終わってるけどな
まあこんなとこじゃなくてブログとかSNSにまとめろよとは思う
まあこんなとこじゃなくてブログとかSNSにまとめろよとは思う
278デフォルトの名無しさん
2022/06/22(水) 00:04:15.50ID:nUS9+NCG ジジイだから周りのこととかスレの流れとか見えてないんだろう
前頭葉が加齢で萎縮して空気を読む能力が衰えたのかな
前頭葉が加齢で萎縮して空気を読む能力が衰えたのかな
279デフォルトの名無しさん
2022/06/22(水) 02:07:39.75ID:mxrPsC3u >>277
> 内容に関係のないクソみたいな指摘しかできない
ハァ?
文盲じゃなかったら本人だろコイツ
1の乗根じゃなくて整数環でFFTした方が誤差の意味でも速度の意味でも劇的に改善するって何度も指摘してるんだが
> 内容に関係のないクソみたいな指摘しかできない
ハァ?
文盲じゃなかったら本人だろコイツ
1の乗根じゃなくて整数環でFFTした方が誤差の意味でも速度の意味でも劇的に改善するって何度も指摘してるんだが
280デフォルトの名無しさん
2022/06/22(水) 03:38:43.09ID:y9JQQK81281デフォルトの名無しさん
2022/06/23(木) 16:48:56.08ID:gevVgEYw どうでもいい言葉尻に突っかかるやつ
若さを自慢したつもりになってるの?
尻の青さをバカにされてるだけだよ
若さを自慢したつもりになってるの?
尻の青さをバカにされてるだけだよ
282デフォルトの名無しさん
2022/06/23(木) 18:18:04.50ID:5dy8Tjxk プログラマの発言じゃないな
プログラムは1文字のタイプミスで全く違う挙動になるのだから
プログラムは1文字のタイプミスで全く違う挙動になるのだから
283デフォルトの名無しさん
2022/06/23(木) 18:26:17.60ID:rC+mT8P4 偶によくC++読み書き出来ない奴がレスしてるんだけどどっから湧いてきてんの
いよいよ Java のクラスライブラリを C++ に移植しようと思っていますが、需要はありますか?
そろそろ共通のクラスライブラリが確立されてもいいと思っているのですが、あまりそんな話がないのが不思議です
そろそろ共通のクラスライブラリが確立されてもいいと思っているのですが、あまりそんな話がないのが不思議です
285デフォルトの名無しさん
2022/06/23(木) 22:23:51.49ID:R7SBWA0E 需要あるのでよろしくお願いします
286デフォルトの名無しさん
2022/06/23(木) 22:27:04.30ID:YY1MWhdq がんばれ!
287デフォルトの名無しさん
2022/06/23(木) 22:59:01.86ID:lRxLFmXq stdやboostじゃ不足か?
288デフォルトの名無しさん
2022/06/23(木) 23:46:22.08ID:Q9NpIN8Z289デフォルトの名無しさん
2022/06/24(金) 00:00:51.28ID:KtheM8QT290デフォルトの名無しさん
2022/06/24(金) 00:02:46.32ID:KtheM8QT >>288
性能よりも、各言語で名前と機能の紐づけが共通することを優先します
性能よりも、各言語で名前と機能の紐づけが共通することを優先します
291デフォルトの名無しさん
2022/06/24(金) 00:17:55.81ID:0z9KCe6G Javaクラスどうこうよりもfinallyステートメントをどうするかなんでは
292デフォルトの名無しさん
2022/06/24(金) 10:21:14.00ID:ZX81zd9Z >>291
ああ、それ、ありましたね finally か、結構重たい課題ですね
ああ、それ、ありましたね finally か、結構重たい課題ですね
293デフォルトの名無しさん
2022/06/24(金) 10:44:21.40ID:K2we1Lar お願いですから名前は短くしてくださいね
294デフォルトの名無しさん
2022/06/24(金) 13:31:54.09ID:dbAYBMOA >>282
template <typename T> を template <class T> と書いただけでジジイ呼ばわりするようなもんだぞ
誰もtypoの話なんかしてない
あ、1人だけいるのかw
template <typename T> を template <class T> と書いただけでジジイ呼ばわりするようなもんだぞ
誰もtypoの話なんかしてない
あ、1人だけいるのかw
295デフォルトの名無しさん
2022/06/24(金) 14:41:08.15ID:frIgvkyi ?
typename と書く方が文法的に新しいの?
typename と書く方が文法的に新しいの?
296はちみつ餃子 ◆8X2XSCHEME
2022/06/24(金) 15:47:15.76ID:STd+R5JH297デフォルトの名無しさん
2022/06/24(金) 18:40:02.03ID:dbAYBMOA >>295
CでC89以前にK&R Cがあったように
C++でもC++98以前にARM C++があった
ISO限定で言うと餃子の言うようになるが
もっと遡るとtypenameは後からできたもので
ARM C++では<class T>という書き方しかできなかった
CでC89以前にK&R Cがあったように
C++でもC++98以前にARM C++があった
ISO限定で言うと餃子の言うようになるが
もっと遡るとtypenameは後からできたもので
ARM C++では<class T>という書き方しかできなかった
298デフォルトの名無しさん
2022/06/24(金) 21:00:22.61ID:VuV41aeC 三十年くらい前にC++primerだったかな?
「typenameとclassならclassのほうで書いとけ、
なぜならタイプ数が少ないから」
みたいに書いてるところがあって(半分ジョークなんだろうな)
最初にそれで刷り込まれてるからclassでしか書いたことない
「typenameとclassならclassのほうで書いとけ、
なぜならタイプ数が少ないから」
みたいに書いてるところがあって(半分ジョークなんだろうな)
最初にそれで刷り込まれてるからclassでしか書いたことない
299デフォルトの名無しさん
2022/06/24(金) 21:15:01.67ID:uqZOpMdD structと書くことも
300デフォルトの名無しさん
2022/06/24(金) 22:03:13.47ID:JvzMg+3d C++ってstaticメソッド継承されますっけ?
Parent.Hoge()ってChild.Hoge()としても呼べます?
あるスクリプト言語を使ってた時にどうやら継承されてなかったようで、言語ごとに違うのか気になりました
Parent.Hoge()ってChild.Hoge()としても呼べます?
あるスクリプト言語を使ってた時にどうやら継承されてなかったようで、言語ごとに違うのか気になりました
301デフォルトの名無しさん
2022/06/24(金) 22:13:15.23ID:zVbF8VlC はい。
302はちみつ餃子 ◆8X2XSCHEME
2022/06/24(金) 22:31:13.16ID:STd+R5JH 型引数は class と書いてあってもクラスに分類されない型 (スカラ型など) を受け取れるのでなんか変な気分ではあるな……。
それでも私は class キーワード派だけど。
それでも私は class キーワード派だけど。
303デフォルトの名無しさん
2022/06/24(金) 22:46:12.30ID:TGTBUWMm modern C++ designの著者は、ユーザー定義型のみを想定してる場合はclass,
組み込み型も想定してる場合はtypenameにしてると書いてたな
組み込み型も想定してる場合はtypenameにしてると書いてたな
304デフォルトの名無しさん
2022/06/24(金) 23:16:18.24ID:jv7PClvp 今はそういうのはコンセプトの仕事だからなあ
305デフォルトの名無しさん
2022/06/25(土) 10:55:48.71ID:23CjKpU2 >>300
private とか protected とか知ってるか
private とか protected とか知ってるか
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本の立場説明へ…外務省局長が北京到着 “台湾有事”首相答弁に中国反発 ★4 [煮卵★]
- 橋下徹氏「この喧嘩は日本の完敗」 台湾有事答弁めぐる外務省局長訪中で指摘「中国に怒られてご説明に伺った日本と見られる」 [muffin★]
- 【日本大使館】中国在留邦人は安全確保を [ぐれ★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 習政権、高市首相への態度硬化 台湾有事発言で連日非難 中国 ★10 [ぐれ★]
- ホヨバゲーの日本版サービス終了をチラつかせるだけで日本人は中国に降伏せざるを得ないという現実 [523957489]
- 高市コイン、155円突破wwwwwwwwww [246620176]
- 杉浦綾乃板って改名したほうがいいよな
- 高市早苗の中国問題、「オーバーツーリズムが解消されてウザい中国人が消えるから日本の勝ち」という風潮になってしまう [562983582]
- おじゃる丸をまったり待機するスレ🏡
- 【悲報】有名ウヨ論客、「現実的に考えて中国と仲直りするしかなくね?」と言ったら野良ウヨから総叩きにあう [856698234]
