追記: 本記事は g++ について書かれており、clang については補足で述べる程度でしたが、clang側の検証結果が間違っておりました。 別途 clang++ で検証した記事も書きましたので、ご覧いただけますと幸いです。 本記事の目的 昨日、株式会社フィックスターズの「Fixstars Tech Blog /proc/cpuinfo」に以下の記事が掲載されました。 RustがC++に速度で勝った話 - Fixstars Tech Blog /proc/cpuinfo 本記事では、上記記事の 手元環境における追試 C++の敗因/Rustの勝因分析 条件をある程度統一した際のベンチマーク結果 の3点を行います。 ベンチマーク環境 OS Fedora 30 CPU AMD A6-1450 Memory DDR3-1333 4GB x 1 (4GB) GCC 9.2.1 Rustc 1.39.
このブログは、株式会社フィックスターズのエンジニアが、あらゆるテーマについて自由に書いているブログです。 今日も「1マイクロ秒でも速いソフトウェア」を目指している皆様、こんにちは。 フィックスターズでは、CまたはC++を仕事に使うことが圧倒的に多いですが、1年前に社内勉強会で「C/C++の後継になりうる」と噂のRustを取り上げました。 その時に「Rustで書き直したらC++で書いたやつより速くなった」というネタを発表したのですが、先日ネットワークドライバを様々な言語で実装したらRustはCに比べてわずかに遅かったという話を見かけた(日本語記事も参照)ので、自分の発表内容を思い返すついでにブログでご紹介します。 TL;DR 共役勾配法のベンチマークを実行したら C++:1686[ms] Rust:1675[ms] で、必ずC++よりRustの方が速かった(わずかに)。 概要 共役勾配法とは
Raspberry Pi 3へQT5をインストールしました。次の環境でインストールし、QTバージョンは、プログラム実行時に「qVersion()(戻り値が文字列のQTのバージョン)」を使用して取得しました。 Raspbian Jessie Release date:2017-01-11 QT version : 5.8.1 Raspberry Pi 3でQT5をコンパイルするには、16GB程度のMicroSDカードを必要とします。あるいは、別のMicroSDカードをマウントして、そちらにQT5のコンパイル環境を構築します(この方法についてはこの記事の最後に記載します)。QT5のコンパイルには、ソースコードの取得を含めると5時間前後の時間がかかります。パソコンからSSHでRaspberry Pi 3と接続している場合は、パソコンの電源が落とせなくなるので、Raspberry Piをスタンドア
米Anker、PD対応のUSB-C充電器でノートPCを充電できる「PowerLine USB-C to DC Cable」にLenovo ThinkPad E/X/T/L/Z/P/U/GやYogaシリーズ対応モデルを追加しています。詳細は以下から。 米Ankerは現地時間2020年05月17日、同社の65W Power Delivery対応のUSB-C充電器を利用してノートPCを充電できる「Anker PowerLine USB-C to DC Cable」に、Lenovo ThinkPad E/X/T/L/Z/P/U/GやYogaシリーズ対応のUSB-C to DCケーブルを追加し、Amazon.comで販売を開始しています。 Wide Compatibility: Equipped with a 4 mm × 1.7 mm DC connector for compatibility
Rust 1.0がリリースされたのは2015年の5月で、5年前のこととなります。自分は1.0 betaのころにRustを始めたので、なかなか感慨深いものです。この5年の間に、いくつもの企業でRustを採用、もしくはその検討がされるようになり、ゆるやかであるもののRustの普及が進んでいると感じます。 そこで、1.0から5年経ち、だんだんと普及しつつあるこの時期に、なぜRustを使うべき、学ぶべきなのか、改めてまとめてみようかと思います。Rustを簡単に紹介する場合、メモリ安全とパフォーマンスの両立、高い生産性をもたらす言語機能などが挙げられることが多いですが、自分なりにRustを学ぶ意味を掘り下げてみようと思います。 なお、以下の文章はほとんど個人的な経験に基づいて書かれたものですので、その点はご注意下さい。 Rustはほどよい機能を提供する言語である 世の中には様々なプログラミング言語が
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く