[過去ログ] Qiita 5 - キータぞ、来たぞ、キータだぞー (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
959(1): デフォルトの名無しさん [sage] 2025/02/06(木) 15:52:42.36 ID:NMJzmIW7(2/2) AAS
記事からリンクされてるMandelbrotプログラムを記事からリンクされてるBrainfuckをC言語にするコンパイラで変換し、オンライン実行環境である 外部リンク:tio.run で C(gcc) を選択してCodeにコードを貼り付け、Compiler flagsに-O3と-march=nativeを指定して実行したところ約5.7秒掛かった。
Cプログラムの大域変数pをmain()ローカルへ変更し
#include <stdio.h>
unsigned char c[30000] = {0};
-unsigned char *p = c + 14999;
int main(void) {
+unsigned char *p = c + 14999;
実行すると約3.4秒。4割ほど速くなった。
記事のC言語の実行時間は効率の悪いコードで行われているのでC#との比較はフェアではない感じ。
960(2): デフォルトの名無しさん [sage] 2025/02/06(木) 18:07:44.63 ID:VTzAUDKa(1/4) AAS
githubに書いてある
dotnet run -c Release -- bench <memory_size> <file>
がJITで
dotnet run -c Release -- build <memory_size> <file>
で出来るcsファイルに適当なcsprojを足して
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net9.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<PublishAot>true</PublishAot>
<DebugType>None</DebugType>
<DebugSymbols>False</DebugSymbols>
</PropertyGroup>
</Project>
記事指定のpublishをしたのがAOTだと思うけど
JIT≒AOT≒1.0秒だった
>>959の> Cプログラムの大域変数pをmain()ローカルへ変更し
は
0.5秒だった
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.039s