あなたんとこ、そのロシアへの経済協力や投資が盛り込まれた予算案に原案で賛成してるじゃありませんか。 https://t.co/W1l1Ald4C0
実行毎に数十msはブレるので、元のC++実装に対しての時間で比較して見ると、最適化オプションと配列境界チェックの除去が効いているように見えます。 そして先述の通り、RustとC++で実行順を入れ替えたり何度か実行しても、最終的に必ず(わずかに)Rustの方が時間短かったので、(2019/09/20:45追記)「計測誤差ではないの?」という問い合わせを内外から多数受けたので、(先述の通り経験的に計測誤差でないことは明らかではあるんですが経験者でない人向けの)分かりやすい証拠としてC++とRustそれぞれ単体を100回ずつ計測した結果を置いておきます。分布から分かる通り、検定などするまでもなく有意にRustの方が時間が短いことが分かります。また、C++側は元のナイーブな実装のままなので、高速化の余地(例えばrestrict)は十分にあります。ここでは「手軽にやった時に」を想定しており、その条件
「パフォーマンスについて言えば、ZigはCよりも速いです。」 この一文は Zig 言語の公式サイトの詳細な概要に実際に書いてある文章です。 その理由としていくつか挙げた上で最後にちらっと「Zig は SIMD ベクトル型を直接公開しており、移植性の高いベクトル化コードを簡単に記述することができます。」と書いてあります。今回の記事では画像処理っぽいお題を使って実際に SIMD 最適化される様子を検証してみます。 ベンチマーク環境 OS: Ubuntu20.04 on WSL2 on Windows11 CPU: AMD Ryzen 9 5900X 12-Core Processor お題 一般的な画像データ構造の表現である、幅×高さ×4(RGBA)の長さを持つ8bit整数の配列を受け取り、in-placeでRGBの値を 10 加算して明るくするという関数を考えます。Aの値は元のままとします。
概要 公式のcore testが全て(UTF8, WAT, SIMD関連のものは除く)通るWASMインタプリタをC言語でフルスクラッチで実装した。自作WASMランタイムで省略されがちなValidation Stageも実装した。この記事はWebAssembly Advent Calendar 2023の三日目の記事である。 目的 このWASMランタイムを実装するにあたり、「できるだけ仕様に従って実装する」ことを心掛けた。WASMの仕様書は以下のissueが立つほど読みにくいものとなっているが、ランタイムをどのように実装すべきかが詳しく書いてあり、一応仕様書を頑張って読めばランタイムが作れるようになっている。 この自作WASMランタイムの目的は、できるだけ仕様に従った実装を与えることで、仕様の理解を助けることである。早さや効率性よりも分かりやすさを優先しているため、実用には向かない。仕様書を
Steven J. Vaughan-Nichols (Special to ZDNET.com) 翻訳校正: 村上雅章 野崎裕子 2022-03-04 11:33 LinuxカーネルがCで記述されているというのは誰もが知るところだ。ただ、そのCがかなり昔のC、すなわち1989年の規格である「C89」だという事実については知らない人もいるかもしれない。C89は「ANSI X3.159-1989」、あるいは「ANSI C」としても知られている。Linus Torvalds氏は、そろそろC89に別れを告げる時だと判断し、Linuxカーネルの公式な開発言語を2011年規格の「C11」に移行しようとしている。 これは見かけほど大きな変更ではない。C89は現在でもほぼ普遍的にサポートされている。どのようなCコンパイラーでも以前の規格との後方互換性を備えているため、C89で記述されたプログラムのコンパイ
関連キーワード Amazon Web Services | Microsoft(マイクロソフト) | アプリケーション開発 | プログラミング クラウドベンダー大手のAmazon Web Services(以下、AWS)が、プログラミング言語「Rust」のスポンサーになった。Rustは2015年に初の安定版が公開されて以来、「C++」の有力な代替として台頭している。「高性能で安定したアプリケーションを開発できる」「プログラマーの生産性を高められる」と評判だ。Google、Microsoft、Mozilla、Yelp、Dropbox、Cloudflare、AWSといった企業がシステム開発言語としてRustを採用している。 併せて読みたいお薦め記事 新たなプログラミング言語習得の壁 プログラミング学習で誰もがきっとつまずく「2つの障害」とは? 「プログラミング学習」が楽にならない“納得の理由”
AtCoder の言語アップデート で、C++17 対応コンパイラが使えるようになりました。やったー! この記事では、競技プログラミングに役立つ C++17 の新しい標準ライブラリ・言語機能を 16 個紹介します。 サンプルコードは、AtCoder の GCC 9.2.1 システムで動作を確認しています。 C++17 標準ライブラリ機能 1. 値を範囲内に収める std::clamp(x, min, max) 値 x を、min 以上、max 以下に収めてくれる関数です。 これまで std::max(std::min(x, max), min) と書いてたのが 1 つの関数で済みます。 #include <bits/stdc++.h> int main() { // 値を 0 以上 100 以下に収める std::cout << std::clamp(50, 0, 100) << '\n'
書きかけです。時間なく、駄文を撒き散らしながら加筆・修正していきます。 Pythonには大変お世話になっております。 Pythonは科学計算が得意で、データ解析もできる。単独開発なので、Pythonはなくてはならない言語。 Pythonの良いところ 1. 科学(統計, AI etc)ライブラリの豊富さ Pythonの悪いところ 1. 遅い, 遅い, 遅い... CPythonは遅い 遅いのは、サービス運用にとって採用されない要因になるかと。大規模運用に関して早いは重要。 (ただ、CPythonは高速化より、Pythonの可能性を広げる事に注力しているものと思われますので、別の高速化の手立てを用いられるのが最良かと) 言語速度が早いとなると、運用システム規模が単純に減らせられる。例えば、現在使っているシステムでVPS100台が1/4の25台になれば、VPS使用量コストは1/4。管理負担も1/
へな・ちょこお @henachoco_mote 【悲報】 新宿区役所さん、ゴミ拾い活動にはあっさり許可だしてたw Colaboさん、本当は自費でやりたくないから申請してないのでは?まで考えてしまう twitter.com/UberXAkiHera/s… 2023-04-05 13:50:10 UberGuild🌟TOKYO @UberXAkiHera 【第7回SumannaMTG⛑開催のお知らせ】 日程…令和5年4月5日(水曜日) 時間...⏰20:00から 場所…新宿区役所を拠点に歌舞伎町👹全般 内容…とりあえずゴミ拾い🗑&反省会🍻 予算…反省会🍶🏮酸化の方はそれなり なんと‼️某🚌跡地の使用許可🈴が出ました (`・ω・´)シャキーン✨ 雨天☔️結構。… twitter.com/i/web/status/1… pic.twitter.com/psCqXkTnK3 2023
Cosmopolitan Libc makes C a build-anywhere run-anywhere language, like Java, except it doesn't need an interpreter or virtual machine. Instead, it reconfigures stock GCC and Clang to output a POSIX-approved polyglot format that runs natively on Linux + Mac + Windows + FreeBSD + OpenBSD + NetBSD + BIOS on AMD64 and ARM64 with the best possible performance. Getting Started First, download the Cosmop
新感覚冷やし系魔法少女ヒャド@VTuber @CTMGHyado よく見たつもりでもわかんなかったから型番を見てみたら、左は5って数字が追加されてたので5に関するなにかかと思って左のパッケージを良く見てみると左下に最大5Aって書いてて右見たら3Aだったのでなるほどって思った twitter.com/hnpn914/status… 2021-02-05 15:52:39 悟猫 @WHWNK 左 PD 5A対応:最大100W 右 PD 3A対応:最大60W Macbook proの15/16インチだと充電速度に差が出てくる。 なお、それ以下、例えば45Wだと、Macbook proの15/16インチだと給電は出来るが充電が出来ない。 twitter.com/hnpn914/status… 2021-02-05 13:01:06 root_jp @root_jp そもそも素人が買うには、USBケ
『霧の戦場のヴェルディーナ: C.A.R.D.S. RPG』公式サイト 『霧の戦場のヴェルディーナ: C.A.R.D.S. RPG』のレビュー行くぜ!俺がプレイしたのはPS5版ね。 パブリッシャー:アクワイア 機種:PS5/PS4/Switch/PC ジャンル:ローグライクデッキ構築☓シミュレーションRPG 発売日:2024/5/23 価格:5500円(ダウンロード版)6578円(パッケージ版) 『Slay the Spire』辺りから一大ブームになった「デッキ構築型ローグライク」と、昔ながらの「シミュレーションRPG」を合体させた新機軸のゲームだ。 今、最もインディーゲーム市場を舐め腐ってるゲームメーカー、アクワイアが送る完全新作である! □【レビュー】アクワイアくん!今のインディー市場にこれは通用しないって!『超古代兵器ホリー』【PS5/Switch/PC】 - 絶対SIMPLE主義
ぼっち・ざ・つぼっく💉 4 @tsuvoc こういう直接USBのコネクタがついてるの、下手に繋ぐとマルウェア仕込まれそうで怖くない? そもそも電圧が規定通りかも心配だし。私は必ず間にモバイルバッテリを挟むようにしてる。 twitter.com/espresso3389/s… 2022-05-15 21:57:33 ぼっち・ざ・つぼっく💉 4 @tsuvoc @tsuvoc 汎用の100Vコンセントだと汎用ゆえにドライヤーだの炊飯器だの予想外のものに使われて容量オーバーの事故があるらしく、事業者的にはどう頑張っても12WなUSB TypeAは使い勝手いいらしいんだけど… 2022-05-15 22:21:14
Ankerの合計120W出る4ポートUSB-C充電器。これってデスク用充電器の最適解では?2021.12.27 08:0063,084 小暮ひさのり これ1個あればいいじゃん。 な無双感を感じています。Ankerの新しい充電器。見ての通り4ポートUSB-Cなんですけど、よーく目を凝らすと一番左のポートには100Wの刻印が…! そう、これ単ポートで最大100W。4ポート合計で最大120Wまで出力できるという、世界中のラップトップの充電器を引き出しの中に葬り去る、デスク上のラグナロクたる一振りです。 Image: Amazon.comただし、ポートごとに出力できるパワーが決まっていて、左から100W・60W・20W・20Wといった構成。組み合わせにすると、こんな感じになります。ちょっぴり複雑。 まぁ、一番左はPC充電用と決めておけば、単ポートなら100W、4ポート使っても50W出してくれるので
「USB Type-Cケーブルは、充電速度が速いって聞いていたのに、思ったより充電されていなかった」「家を出るまでの短い時間で充電したかったのに……!」――そんな経験はありませんか? 確かに、今まで慣れ親しんできたUSB Type-A(USB Standard A) to USB Type-CケーブルやUSB Type-A to Micro USB(USB Micro B)ケーブルなどと違い、両端にUSB Type-CコネクターのついたUSB Type-C to USB Type-Cケーブルは、電力供給量が最大100Wになった(現在は最大240W対応)ことで話題になりました。 しかし、全てのUSB Type-Cケーブルが大容量の電力供給に対応しているわけではありません。“なる早で”充電できるケーブルの選びかたを紹介します。 急速充電とは? 急速充電とは、その名の通り、スマホなどのモバイル端
印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます 米国家安全保障局(NSA)は米国時間11月10日、ソフトウェアのメモリー安全性強化に向けたガイダンスを公開した。同機関はその中で開発者らに対して、ハッカーらによるリモートコード実行(RCE)をはじめとするさまざまな攻撃からコードを保護するために、C#やGo、Java、Ruby、Swift、Rustといったメモリー安全性の高い言語に移行するよう推奨している。 これらの言語の中では、Javaが企業向けアプリや「Android」アプリの開発で最も幅広く使用されている一方、Swiftは「iOS」アプリの開発環境に取り込まれている点もあって人気プログラミング言語の上位に入っている。また、RustはシステムプログラミングにおいてCやC++の代替とし
printf に関する以下のツイートが流行っていました。 上のツイートでは割とあっさり説明されていますが、amd64 SysV ABIでこの現象が起こる理由にはもっと深遠なものがあると思うので、可変長引数とからめて説明してみたいと思います。 前提条件として「ABI」「可変長引数」「non-prototyped関数」の知識が必要なのでそこから説明します ABIとは ABI (Application Binary Interface) とは、機械語レベルでのインターフェースのことです。 機械語そのもののルールはISA (Instruction Set Architecture) によって規定されていますが、たとえばC言語の「関数呼び出し」などの概念を機械語でどのように表現するかについては規定していません。そのルールを定めたのがABIです。したがって、ISAとABIはおよそ1対多の関係にあります
8月6日、C++23はC++20の次の標準として発表されました。 C++23はC++の進化の一環として重要な役割を果たし、C++の機能を改善することを目的としています。 C++23はC++98やC++03ほどの大きな変更はなく、C++17の伝統に則ったものです。 本日、C++コミュニティが待望の次期C++標準、「C++23」を発表した。C++は長い歴史を誇るプログラミング言語であり、C++23はその進化の中でも特に重要な節目となる。C++23はC++98やC++11、C++20ほどの大規模な変更は見られないが、C++17の伝統を継承している。 C++の歴史的進化 C++は1980年代末にBjarne Stroustrup氏とMargaret A. Ellis氏によって執筆された「Annotated C++ Reference Manual (ARM)」によって誕生した。この書籍は当時多数存
ClubhouseのiPhoneアプリは各所でお馴染みのObjective-Cライブラリが使用されており、アプリ自体は最先端のムーブメントながらもUIからはシニアの職人技を感じます。根拠はないですがアプリの実装もObjective-Cでゴリゴリ書いてそうです。 ここではそんなObjective-Cライブラリの一部を紹介します。 IGListKit https://github.com/Instagram/IGListKit Instagram開発チームのコレクションビューの差分描画最適化のノウハウが詰ったライブラリです。 アプリの肝となるフィード系の画面で使われています。 UIScrollView+InfiniteScroll https://github.com/pronebird/UIScrollView-InfiniteScroll 無限スクロールを実現するライブラリです FlagP
Objective-C というプログラミング言語を開発した1人である Brad Cox 氏が、2021年の1月に76歳で亡くなっていた(SCNow)。 IT業界にいる人なら、Objective-C という名前を聞いて、すぐにそれが何か分かるだろう。しかし、そうでない人たちにとっては、プログラミング言語の種類と、その特徴や背景を思い浮かべるのは難しいはずだ。 Objective-C は、初期の iPhone 向けアプリケーションの開発に利用されていたプログラミング言語だ。ある時期まで、iPhone のアプリケーションは、ほぼ全て Objective-C というプログラミング言語によって開発されていた。 Apple という会社と、切っても切り離せないプログラミング言語。いや、スティーブ・ジョブズと切っても切り離せないプログラミング言語と言った方が適切だ。 Brad Cox 氏の死を切っ掛けに、
2023年皐月賞(GⅠ)でファントムシーフに騎乗したC.ルメール騎手の目線カメラ【ジョッキーカメラ】の映像です。 【レース概要】 2023年4月16日(日曜)3回中山8日 発走時刻:15時40分 天候 晴 芝 重 11レース 第83回 皐月賞(GⅠ) 2,000メートル(芝・右) ▼レース映像はこちら https://youtu.be/z2asRKpHa7g ▼ JRA公式チャンネル JRA日本中央競馬会の公式YouTubeチャンネルです。 最新のレース映像からここでしか見られない特別コンテンツまで、競馬に関する様々な情報をお届けします! 競馬ファンは必見です!チャンネル登録よろしくお願いします! https://bit.ly/3rlKyA6 #ファントムシーフ #ルメール #皐月賞 #ジョッキーカメラ #JRA #日本中央競馬会 #競馬 #馬 #GⅠ #GⅡ #GⅢ #レース #
今回の記事はasync/awaitについて。 C#に限らず、現在では多くのプログラミング言語が非同期処理を扱う言語機能としてasync/awaitを採用しています。現在の.NETでも至る所にasync/awaitが使われており、避けて通ることはできない重要な機能となっています。 そこで今回は、C#における非同期処理とasync/await、またC#8.0で導入された非同期ストリームとIAsyncEnumerable<T>について、基本的な使い方を解説していきます。 また、記事の後半では実際にasync/awaitがどのように動作しているかをコンパイル結果を通して説明していきます。この辺りはやや高度なトピックになるため読み飛ばしていただいても構いませんが、async/awaitをより深く理解したい方は是非そちらも読んでみてください。 同期処理 / 非同期処理 async/awaitに関する話
この記事の賞味期限は切れています。掲載内容や情報が古い可能性があります。 広告あり USB Type-C to Type-Cケーブルの価格破壊が起きています。 652円なのにフルスペック USB 3.1 Gen2に対応したUSB Type-C to Type-Cケーブルといえば1,000円以上するものが多いですが、Verbatim USB Type-C to Cケーブルはなんとたったの652円という超低価格であるにもかかわらず、USB 3.1 Gen2・USB PD 100W・DisplayPort Alt Mode対応という最高級のスペックを持ったケーブルです。 「Verbatim? またどこかの無名中華メーカーだろ」と思った方もおられるかもしれませんが、実はVerbatimはアメリカで生まれた老舗ブランドで、三菱ケミカルグループに買収された後に台湾企業に渡され、アイ・オー・データ機器が
はじめに LINQの登場後、C#は地道な進化を続け、C# 7で登場したタプルと分解、パターンマッチング、C# 8で登場したswitch式、C# 8,9で強化されたパターンマッチング などによって、C#のプログラミングスタイルは劇的に変化しました。 昔では考えられなかったようなスタイルのコードが記述可能になり、可読性やコードの安定性が飛躍的に向上しています。 そのキーポイントとなるのが、「宣言的プログラミング」です。 この記事では、最新のC#を使ってコードを宣言的に書く手法を紹介します。 やってる人は自然とやっている事だとは思いますが、そうではない人もいると思いますので、そういう方の参考になればと願っています。 宣言的プログラミングとは 宣言的プログラミングとは、「どうやってやるか(how)ではなく何をしたいか(what)を書く」と良く言われますが、なんとなくあいまいです。 これをもう少し具
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く