タグ

clipとプログラミングとメモリに関するrichard_rawのブックマーク (10)

  • Visual Studio 2019正式版リリース。メモリ使用量が4分の1以下に激減、リモートペアプロ機能のLive Share、AIによる支援機能IntelliCodeも正式機能に。Mac版も同時リリース

    Visual Studio 2019正式版リリース。メモリ使用量が4分の1以下に激減、リモートペアプロ機能のLive Share、AIによる支援機能IntelliCodeも正式機能に。Mac版も同時リリース マイクロソフトは統合開発ツールの「Visual Studio 2019」が正式リリースになったと発表しました。と同時に、AIがコーディングを支援する「IntelliCode」、ペアプログラミングを支援する「Live Share」など、これまで注目されきた機能が正式版となりました。

    Visual Studio 2019正式版リリース。メモリ使用量が4分の1以下に激減、リモートペアプロ機能のLive Share、AIによる支援機能IntelliCodeも正式機能に。Mac版も同時リリース
    richard_raw
    richard_raw 2019/04/03
    そんなに重かったっけと今動いてる2017のdevenv.exeを見てみたら300MB程度だった……。ちっさいソリューションを開いてるからか。それともTeam機能使ってないからか。
  • 例え話をしないC言語のポインタの説明 | 右や左の旦那様

    まえおき 巷では「プログラマーになりたい人に初学者にとって、ポインタという考え方がわけわかめ」という話がよくあります。 そこでいろいろな人が「ポインタは住所だ」とか「変数がハコで」とか手を変え品を変え分かりやすいように説明してくれています。 それでもなお「ポインタがわかりづらい」という人が後を絶ちません。 もういっそのこと、例え話をやめてド直球で攻めたらいいんじゃないでしょうか。 Hello, Worldより簡単に サンプルコード 以下のコードを考えます。 void main() { int a; int b; int c; a = 1; b = 2; c = a + b; } 「#include <stdio.h>」なんていう謎のオマジナイはこの際ナシです。あんなもの無くたってC言語は成り立ちます。 まぁ見ての通り、どこにも何も出力されませんが。 このプログラムは、「c = a + b」

    例え話をしないC言語のポインタの説明 | 右や左の旦那様
    richard_raw
    richard_raw 2018/02/01
    最近の初学者はいきなりgdbをマスターしてるのか……(そうじゃない)
  • メモリのビット反転エラーとセキュリティの話|Rui Ueyama

    ハードウェアのエラーでメモリの内容が化けてしまうことが稀にある。大抵のDRAMエラーはせいぜいプログラムがクラッシュする結果になるだけだが、データ破壊になることもありえるし、悪意のある使い方をすればセキュリティ破りに使うこともできてしまう。ここではメモリエラーとセキュリティの話をしようと思う。 メモリのエラー率は意外なほど高い。データセンターで大規模なマシン群を対象に実際に観測したところ、1年間に1回以上のエラーが発生したDIMMモジュールは全体の8%にのぼったそうだ。DIMM 1枚に数百億個のメモリセルが実装されているといっても、このエラー率はちょっとびっくりするくらい大きな数字ではないだろうか? サーバでは普通はエラー訂正付きのDIMMを使うので1ビットのエラーは問題にならないが、エラー訂正のないコンシューマ機器ではこれは実際的な問題になりえる。 メモリエラーを利用したセキュリティ破り

    メモリのビット反転エラーとセキュリティの話|Rui Ueyama
    richard_raw
    richard_raw 2017/11/21
    「物理的に隣接するメモリセルに想定を超える電気的な影響を与えてビット反転を引き起こす」これがブルートフォースアタックか……(違う)
  • 「プログラミングの常識」を時々見直す必要性について|Rui Ueyama

    自分の中のプログラミングの常識というものは、ときどき現実のハードウェアに合わせて調節しないといけない。ハードウェアが進歩し続けているので、コンピュータで簡単にできることと相対的に難しいことのバランスが変化し続けているからだ。ここでは特にストレージにフォーカスして書こうと思う。 昔はメモリが相対的にとても貴重な資源だったので多くのプログラマがメモリを節約することに血道を上げていた。例えばWindowsの初期の頃に設計されたデータ構造には、メモリをバイト単位ででもいいから節約したいという意図の痕跡がいまでも多く見受けられる。DRAMの次に速い記憶装置はHDDだったので、メモリが足りなくなればHDDにデータを保存せざるを得ないのだが、DRAMとHDDのランダムアクセスの速度差は、机の上のの開いているページを見るのと、そのAmazonで注文して到着するのを待つのと同じくらいのスケールで違うの

    「プログラミングの常識」を時々見直す必要性について|Rui Ueyama
    richard_raw
    richard_raw 2017/11/02
    なるほど、ディスク/メモリ/CPUの速度比が時代によって変わるから、か。
  • 【iOS/Mac開発】超サクサクアプリへの必須ツール Instruments を使いこなそう

    こんにちは。iOS / Mac 開発担当の金内です。 使って幸せなアプリには、サクサクとした動きが欠かせませんね。自分たちで作っているアプリが「サクサク」でなく「もっさり」と言われてしまうと残念な気持ちになりますが、反面「よし。こうなったら超最適化して超サクサクなハイパフォーマンスアプリを目指す!」と誓いを立てるよい機会でもあります。 そんな誓いを立てたあなたにピッタリのツールが Xcode に付属している Instruments(インストゥルメンツ)です。フェンリルのウェブブラウザ Sleipnir for Mac や Sleipnir Mobile for iPhone / iPad の開発でも大活躍しています。 Instruments は、一般的にはプロファイラという種類のツールにあたります。プロファイラは、どのオブジェクトがどれくらいメモリを消費しているとか、どのメソッドにどれくら

    【iOS/Mac開発】超サクサクアプリへの必須ツール Instruments を使いこなそう
    richard_raw
    richard_raw 2013/04/20
    プロファイラ使わないとなあ……。グラフィック関係は別にQuartz Debugというツールだそうです。
  • モダンなObjective-Cプログラミング

    Summary 新リテラル - NSNumberリテラル,Boxed Expression, NSArrayリテラル,NSDictionaryリテラル, 添字アクセス コンパイラがメモリ管理を肩代わり - ARC (Automatic Retain Count) Cでも無名関数 - Blocks マルチスレッドプログラミングを簡単に - GCD (Grand Central Dispatch) Bundlerライクなライブラリ管理 - CocoaPods はじめに Objective-C のプログラミング環境はどんどん良くなってる コーディングを楽に エンバグの軽減 一方、Web上の記事や書籍のコードは古いまま 古い情報に流されないためにも、新しいコンパイラやツールの機能を確認しておこう NSNumberリテラル void main(int argc, const char *argv[]

    richard_raw
    richard_raw 2013/03/29
    全然ついていけてません……。
  • C言語のポインタはメモリを想像できれば理解できる | 100% Pure NEET

    最近、C言語のポインタは難しいって話をプライベートでして、そのときにした説明をまとめてみた。 コンピュータのメモリがどのようになっているか想像する これはHex Fiendというソフトを使ってあるファイルのHexダンプを見たものだけど、コンピュータのメモリも同じような構造になっているのでこれを使う。類似のソフトはHex Editorなどで検索すれば出てくるだろう。 コンピュータのメモリはこうしたずらずらと数値が記録されたマス目の連続のような構造をしている。Hex Editorなのでこれは16進数で表現されている。1バイトは16進数2桁で表現される。Hex Editorでは普通は1バイトごと、あるいは4バイトごとに区切って表示する。このエディタは一区画ごとに8桁の16進数があるので4バイトごと。 ポインタを使うのに重要なのはたぶん、こうしたメモリの内容を頭の中で思い浮かべることができることだ

    richard_raw
    richard_raw 2012/11/19
    ポインタ深いなあ。/C++の参照便利ですよね。
  • iOS6から使えるアプリの状態復元UIStateRestoration - ninjinkun's diary

    iOSアプリを起動する際、ユーザが最後に開いた画面を表示できると利便性は高まります。しかしバックグラウンドに移ったアプリは、メモリが逼迫してくると強制的に終了させられて、最初からやり直しです。この終了状態から、あたかも直前まで動いていたかのように状態を復元するUIStateRestorationがiOS6から導入されました。 追加の実装は必要ですが、自前でやるよりは楽に状態の保存と復元が可能になります。 以下の内容は最新のiOSアプリケーションプログラミングガイド(既に日語訳出てる!)を参照しながら実装してみたものなので、詳細を知りたければそちらを参照するのがおすすめです。 はじめに この機能で保存、復元されるものは以下の通りです。 ViewControllerとViewController Container UINavigationViewControllerのスタックも復元 Vie

    iOS6から使えるアプリの状態復元UIStateRestoration - ninjinkun's diary
    richard_raw
    richard_raw 2012/10/22
    画面の復元。データは自前でなんとかすべし、と。
  • ポインタの裏話

    ポインタの裏話 岡﨑 直観 okazaki at ecei.tohoku.ac.jp http://www.chokkan.org/ @chokkanorg ポインタの裏話 プログラミング演習A 1 このような説明を 覚えていますか? 知らなくても全く問題ありません ポインタの裏話 プログラミング演習A 2 int x = 0; &xは変数xの「アドレス」 「番地」「住所」を返す 変数x 0 &x メモリ空間, 記憶空間 変数xのアド レス(住所) ポインタの裏話 プログラミング演習A 3 ____ / \ 何言ってたんだこいつ? / ⌒ ⌒\ 番地 アドレス ぬるぽ / (●) (●) \ \ / | 、“ ゙)(__人__)" ) __________ \ 。` ⌒゚:j´ ,/ j゙~~| | | | __/ \ |__| | | | || / , \n||

    richard_raw
    richard_raw 2012/06/05
    PDF注意。あとでiPodに入れて読む。
  • スパース行列(SparseMat)の使い方2:超解像 | OpenCV.jp

    SparseMatをつかった超解像処理を行います.このデモンストレーションは下記論文の実装になっています.詳細は以下論文やビデオをご覧ください.また,このサンプルコードはOpenMPを有効化するとコアを有効に使います.メモリは1Gほど使うため実行時には注意してください. Farsiu, S.,Robinson, D., Elad, M., Milanfar, P.”Fast and robust multiframe super resolution,” IEEETrans.ImageProcessing 13 (2004)1327?1344. C++ //Super resolution with Bilateral Total Variation //Implimentation of a paper; //Farsiu, S.,Robinson, D., Elad, M., Mila

    richard_raw
    richard_raw 2011/07/19
    800x600以上の画像を指定すると落ちる……。仮想メモリが足りないのかしら。
  • 1