You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Hello C++ World! At various times during our development cycle here in the C++ IDE, our developers start working on features that we believe can bring a lot of value to customers, but sometimes we just don’t have enough data on our own to figure out whether or not what we came up with works for our users on a broader scale. Rather than wait until we’ve accounted for every scenario, we’ve decided t
Hello. Visual Studio 2015 Update 1 Release Candidate (known issues) is available now. It includes a number of goodies for C++ developers, but before we take a look, the Visual C++ team wants to thank everyone who has provided feedback over the last year. Your comments and suggestions (and frowns) have helped us plan and prioritize the features we deliver. Thank you! Here is the good stuff: Compile
このブラウザーはサポートされなくなりました。 Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。 2015 年 8 月 Volume 30 Number 8 Windows と C++ - Windows ランタイムのコンポーネントと MIDL Kenny Kerr | 2015 年 8 月 2015 年 7 月号 (msdn.microsoft.com/magazine/mt238401) では、COM プログラミング パラダイムが進化したものとして、Windows ランタイム (WinRT) コンポーネントの考え方を紹介しました。COM は、Win32 では脇役でしたが、Windows RT では主役に据えられます。Windows RT は Win32 の後継となるものですが、Windows API
a language for fast, portable computation on images and tensors Halide is a programming language designed to make it easier to write high-performance image and array processing code on modern machines. Halide currently targets: CPU architectures: X86, ARM, MIPS, Hexagon, PowerPC, RISC-V Operating systems: Linux, Windows, macOS, Android, iOS, Qualcomm QuRT GPU Compute APIs: CUDA, OpenCL, OpenGL Com
社内勉強会のネタです. HalideとDarkroomという画像処理を並列化するためのソフトウェアの研究についてのちょっとしたサーベイ発表のスライドを公開します. Halideについては,サンプルコードも書いてみました. とある画像処理を,下のメソッドチェーンで記述するだけで,「画像全体を8行毎に切って,それをマルチスレッドで処理し,8行毎の処理は内部的に4ピクセル毎にベクタライズして処理する」という並列化処理に置き換えられてしまいます. ゴイスー. temp.split(y, y, yi, 8).parallel(y).vectorize(x, 4); 例えば,25×25のサイズフィルタを畳み込むぼかし処理を上記の並列化で高速化した場合,画像サイズが768×1024のケースで,15倍くらい高速化することができました. また,HalideはC++にインラインでそのまま書けるのでポータビリテ
Home Metashell Motivation License Getting Metashell Supported platforms Supported compilers Binary installers Building Metashell User manual Getting started The environment in Metashell Using different compilers Troubleshooting Embedding Metashell How to... Reference The pragmas MDB commands PDB commands The built-in headers Engines Developer guide Building Metashell Creating a Metashell release T
The aim of the guidelines is to help people to use modern C++ effectively. By "modern C++" we mean C++11 and newer. In other words, what would you like your code to look like in 5 years' time, given that you can start now? In 10 years' time? The guidelines are focused on relatively higher-level issues, such as interfaces, resource management, memory management, and concurrency. Such rules affect a
Haskell and C++ are very different programming languages. Haskell is purely functional and C++ is imperative. While ‘normal’ C++ is imperative, C++ metaprogramming is purely functional, just like Haskell. This blog shows examples of Haskell code that I’ve translated to C++. Why would you do this? Last week I blogged about Blasien. Blasien is a set of header files for writing literal validated XML
すべての Microsoft 製品 Global Microsoft 365 Teams Copilot Windows Surface Xbox セール 法人向け サポート ソフトウェア Windows アプリ AI OneDrive Outlook Skype OneNote Microsoft Teams PC とデバイス Xbox を購入する アクセサリ VR & 複合現実 エンタメ Xbox Game Pass Ultimate Xbox Live Gold Xbox とゲーム PC ゲーム Windows ゲーム 映画とテレビ番組 法人向け Microsoft Cloud Microsoft Security Azure Dynamics 365 一般法人向け Microsoft 365 Microsoft Industry Microsoft Power Platform W
By Adrien Hamelin | Jun 30, 2015 11:27 AM | Tags: intermediate See the talk Kevlin Henney gave at the NDC this june: by Kevlin Henney What you will find in the video: Functional C++? As opposed to what - dysfunctional? Well, kind of, yeah. Sure, in C++ the principal unit of composition is called a function, but that doesn't mean it's a functional language. And the idea of restricting mutability of
By Niks | Jun 24, 2015 04:39 AM | Tags: basics C++ has more than one ways to express polymorphism. Discover the nomenclature and read examples on all of them in the following article : by Peteris Krumins From the article: (...) These polymorphisms also go by different names in C++ : Subtype polymorphism is also known as runtime polymorphism. Parametric polymorphism is also known as compile-time po
We’re still working on finishing VS 2015 RTM, but we’re definitely done with adding new features, so we can publish final feature tables. Let’s start with the STL, where we implemented a bunch of stuff after publishing 2015 RC’s features in April. Whenever I mention C++17 below, I’m referring to the current Working Paper N4527. Standard Library This table of C++14/17 Library features contains ne
このブラウザーはサポートされなくなりました。 Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。 コンパイラの最適化についてすべてのプログラマが知っておくべきこと (第 2 部) Hadi Brais コード サンプルのダウンロード コンパイラの最適化に関する連載の第 2 部です。初回 (msdn.microsoft.com/magazine/dn904673) は、関数のインライン化、ループ アンローリング、ループ不変条件コード モーション、自動ベクター化、および COMDAT 最適化について説明しました。今回は、それ以外の 2 つの最適化として、レジスタ割り当てと命令スケジューリングを取り上げます。これまで同様、Visual C++ コンパイラを中心に、Microsoft .NET Framework
ホーア論理を拡張しポインタを扱える「Separation Logic」、静的検証ツール「Infer」でMonoidics社が実用化 英Monoidics 取締役兼共同創業者 Peter O'Hearn氏 CTO兼共同創業者のCristiano Calcagno氏 静的検証ツールの分野で新たなタイプの製品が登場した。メモリー関連エラーの検出に特化した英Monoidics社の「Infer」だ。「Separation Logic」という近年開発されたソフトウエア科学の研究成果を活用している。従来の一般的な静的検証ツールよりも正確に、メモリーリークなどのメモリー関連エラーをチェックできるのが特徴だ。 メモリーリーク検証ツールといえば、米IBM社の「Rational Purify」が著名だが、Purifyは静的検証ツールではなく、実際に対象となるソフトウエアを実行しながらメモリーリークを検出する動的
私はC++歴3年の学生趣味プログラマーです。 「C++はなぜヘッダと実装を分けなくてはならないのか/そもそも本当に分けなければならないのか」という質問です。 C++といえば、ヘッダー部と実装部を.hファイルと.cppファイルに分けることが一般的とされている言語ですが、 これは同じオブジェクト指向言語のC#やJavaにはない特徴です。 そのせいでC++使いたちは今日もcppファイルとhファイルを行ったり来たりしながらコーディングする羽目になっています。(そしてVS使いはF12とCtrl+-を得意気に連打しています。) 私にとってもそれが当たり前になって久しいですが、 時々C++を学び始めたばかりの後輩から「なぜヘッダファイルに実装を書いてはならないのか」「なぜC++は二度も同じコードを書くことを強いるのか」と質問を受けます。 私はそのたびに「実装の隠蔽化」とか「循環参照の危険が云々」とか「そ
#include <iostream> #include <type_traits> #include <boost/optional.hpp> template < typename Input, typename Functor, typename OptionalOutput = typename std::result_of<Functor(Input)>::type > OptionalOutput operator >>= ( const boost::optional<Input>& a, Functor f ) { if (a) return f(*a); return boost::none; } template<typename T> std::ostream& operator<<(std::ostream& os, const boost::optional<T>
新サイトに移転しました Siv3D の新しい Web サイトは siv3d.github.io です。
Unite 2015 Tokyo の講演で詳細を話せなかったのが心残りだったので、大量のオブジェクトの更新処理についてこの場で書いてみます。 主に C++ で、簡単なパーティクルエンジンを作り、それを SIMD を用いて高速化する手順を解説します。 話を簡単にするため、以下の前提を設けます。 ・x86 環境のみ考慮 ・パーティクルは位置と速度のみを保持 ・パーティクル同士の相互衝突は総当たりで計算 総当たりなので超遅いですが、実装は容易で SIMD による恩恵を受けやすく、題材として手頃です。 この記事の中で引用されているソースの元は こちら、ビルド結果 (上のスクリーンショットのデモプログラム) は こちら になります。 相互衝突するパーティクルを実装する場合、お互いの距離を計算し、当たっていたらめり込み具合に応じて押し返す、というのがよくある実装だと思います。まずはそれをストレートに
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く