サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
掃除・片付け
qiita.com/fujitanozomu
はじめに gccの最適化指示である-Ofastをお気軽に使ってる記事を見掛けたので注意喚起的なやつです。 -Ofastとは何ぞや gccのドキュメントから引用 https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-Ofast -Ofast Disregard strict standards compliance. -Ofast enables all -O3 optimizations. It also enables optimizations that are not valid for all standard-compliant programs. It turns on -ffast-math, -fallow-store-data-races and the Fortran-specific -fstac
はじめに 先日ツイッターで見かけた呟き pic.twitter.com/33Yk02hu1U — TOMO (@tomozh) October 14, 2020 そういうこともあるのか的な反応もあるようなので具体例を挙げてみることにする。 例1 所謂FizzBuzz問題。 #include <stdio.h> void fizzbuzz(int n) { int next; int i = 1; do { printf(i % 15 ? i % 5 ? i % 3 ? "%d\n" : "Fizz\n" : "Buzz\n" : "FizzBuzz\n", i); if (i++ >= n) next = 0; } while (next); } int main(void) { printf((char[]){""}); // この位置にprintfが無いとなぜか動かない fizzbuz
Kanbayashi Ryo氏の書かれた記事『プロセッサの性能を引き出すのは大変だよというお話(行列積チューニング)』へのコメントの続きです。 先の記事に私が書いたコメント コンパイラによる自動ベクトル化でどの程度性能が上がるかを確認した上で、作業的に煩雑な SIMD 命令の使用を検討すべきと思います。 について検証してみました。 コード1.5 に SIMD 命令の効果的な使用を考えてみます。 コード1.5 の内容は先にも書いたように 100401600: c4 c2 7d 19 77 c8 vbroadcastsd -0x38(%r15),%ymm6 100401606: c4 c1 4d 59 ba c0 24 vmulpd -0xdb40(%r10),%ymm6,%ymm7 10040160d: ff ff 10040160f: c5 d5 58 ef vaddpd %ymm7,%y
#include <stdint.h> int mandelbrot(int16_t arg, uint8_t* ram, const uint8_t* font) { (void)arg; (void)font; int n = 32; int w = 64, h = 48; int a = 2 << 6, b = a * a, c = (3 << 12) / w; for (int y = 0; y < h; y++) { int v = (y - h / 2) * c; for (int x = 0; x < w; x++) { int u = (x - (w * 3) / 4) * c; uint8_t* z = &ram[0x900 + (x / 2) + (y / 2) * 32]; int j = 1 << ((y % 2) * 2 + (x % 2)); int k = j
var i = 0; var cnt = 0; while(i < 1){ cnt ++; i += 0.1; } console.log(cnt); JavaScript の実行環境に入力し動作させ、何が出力されるかを確認することは容易ではあるが、「なんかわからんけど動かしたら ~という結果になった」というだけではプログラマ失格である。「これこれこうだから ~という結果になる」と論理的に説明できなければ問題について正確に理解し回答したとは言えない。 本稿では、回答まで書いてしまうと CodeIQ から怒られる気がするので、そこまでには至らない、途中までのところに留めておく。 JavaScript の実数の表現方法 JavaScript は現在の規格では実数は IEEE 754-2008 規格の double-precision 64-bit binary format で表現する。 IE
このページを最初にブックマークしてみませんか?
『@fujitanozomuのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く