![Intel、DDR4互換の不揮発性メモリ「Optane DC Persistent Memory」を正式発表 ~CPUソケットあたり最大4.5TBメモリ環境を実現、1Uで1PBの大容量SSDも](https://cdn-ak-scissors.b.st-hatena.com/image/square/d317d7a60a6f090f31076a6150452f5c6f9979ca/height=288;version=1;width=512/https%3A%2F%2Fpc.watch.impress.co.jp%2Fimg%2Fpcw%2Flist%2F1177%2F812%2F005.jpg)
Windows 10に「WSL(Windows Subsystem for Linux)」をインストールすると、Linux向けのプログラム(バイナリファイル)をそのまま実行することができる。WSLのインストール方法や活用については、以下のTIPSなどを参照していただきたい。 WSLでは、ローカルドライブが自動マウントされる WSLを起動すると、ローカルのハードディスクやSSD上に存在して、ドライブ文字を割り当てられているNTFSやFATなどの固定ボリュームはWSL用に自動マウントされる。マウント先は、例えば「C:」ドライブなら「/mnt/c」、「D:」ドライブなら「/mnt/d」、……などとなっている。 だが、リムーバブルデバイス(USBメモリやUSB接続のハードディスクなど)やネットワークドライブは自動ではマウントされない。そのため、USBメモリにコピーしたデータやツールなどを、WSL上
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes 第7回 AWS Lambda を使ってみよう (小澤昌樹) 2016年3月 はじめに みなさん、こんにちは。今回の「今からはじめる Amazon Web Services」は、「AWS Lambda」を紹介します。AWS Lambdaは、アプリケーションをイベントドリブンで実行できるプラットフォームです。昨今話題のIoTデバイスと連携しての活用も見込まれるサービスですが、実際はどのようなものなのでしょうか。 AWS Lambdaとは Lambdaは、ラムダと読みます。「AWS Lambda」は、2014年11月に発表され、その後も新しい機能が追加されている注目のサービスです。AWS Lambdaを使うことで、AWSクラウド上にデプロイした独自の
今日はPython (Pandas)で高速にCSVを読むことに挑戦したいと思います。 Kaggleに参加するたびに、イライラしていたので各実装の白黒はっきりさせようと思います。 R使いが羨ましいなぁと思う第一位がCSV読込が簡単に並列出来て速いことなので、 なんとかGILのあるPythonでも高速に読み込みたいと思います。 ただ、この検証ではコーディング量が多いものは検証しません。 CSV読込は頻出するので、フットワークの軽さが重要です。(オレオレライブラリ嫌い) Pickleは早いけど。。。 結論はDask使おう! 検証環境 データ 速度検証 pandas.read_csv() pandas.read_csv() (dtype指定) pandas.read_csv() (gzip圧縮) numpy.genfromtxt() pandas.read_csv() (chunksize指定 +
機械学習用のPC構成を最初の頃に悩んだので残します。主にKaggleやディープラーニングで遊べる用途です。 現在利用しているPCの構成は以下の通りです。 CPU core i5 7600 GPU GTX 1080ti MEM 64GB SSD 512GB SATA CPU 一番悩む部分でした。多くの機械学習ライブラリがGPUに対応しているので、GPUにお金を注ぎ込むのも選択肢の一つです。 ディープラーニングは2コアあれば十分ですが、XGBoostやLightGBMはGPUの恩恵が少なく、多コアのRyzenが圧倒的なパフォーマンスです。 個人的にはGPUが十分であれば、Core i5でも我慢できるレベルです。 ※追記:コンペでCPUに頼る部分が多くなると、Core i5で後悔します。お金に余裕あればi7以上を買いましょう。 安さ重視の Pentium G 無難なCore i5 / i7 ス
注: 無線ネットワークは干渉などによりこの数値より遅くなる状況も十分ありえます。 ポイント メモリからの読み込みとディスクからの読み込みはランダムアクセスで1000倍程度違う とは言え、最近はディスクも結構速い きちんと繋がれた有線ネットワークからの読み込みは、ディスクより速い つまり、ディスクから読むより、同じデータセンターのマシンのメモリから読んだほうが速い モバイルネットワークだと100キロバイトのデータでも1秒以上かかることがある メモリからの読込速度の遅さは、CPUのクロック数も10G/s程度なのと、本来はL1/L2キャッシュなどがあることを考えると通常意識しなくて良い 何故この参考値をまとめたか プログラミングをする際、どのくらいの時間でどのくらいのサイズ感の処理が出来るのかを考えられることが、ある一定規模以上のサービスを開発するときは必須条件になってくると思います。 なにより
はじめまして。 CTCのクラウドイノベーションセンターで、クラウドを活用した開発やシステムアーキテクチャの検討を行っている丸山です。 第1回目の投稿は、AWS Lambdaの処理性能について調査した結果について書いてみたいと思います。 AWS Lambdaとは LambdaとはAWSが提供しているコンピュートサービスの1つで、イベントをきっかけとして、登録したコードを実行させることができます。”イベントをきっかけ”にして処理が走りますので、常時起動しているサーバが不要になるのが特徴です。 2016年2月9日現在対応しているイベントとランタイムを調べてみました。 ※各イベントについては別の機会に解説したいと思います。 【イベント】 S3 DynamoDB Kinesis SNS SES Cognito Sync Trigger CloudWatch Logs CloudWatch Even
いまにも壊れそうな15~17年くらい前のPCをバックアップのため仮想化しました。いわゆるP2Vなんですが思ったよりも手こずったのでその時のメモです。 ターゲットPCのスペック ターゲットPCのOSはWindows2000 SP2、メモリ128M、HDD40G、HDDのインターフェースはIDEです。 ホストPCの環境 仮想化ソフトはVirtualBoxを使用、ホストOSはUbuntu16(64bit)。ターゲットPCからイメージを取得するのにTiny Core Linuxを使用しました。 イメージの取得 これまでの方法が使えない P2Vでまず思いつくのがVMware Converterなんですが、最新のVMware vCenter Converter StandaloneはWin2000に対応していないようです。できる限り古いバージョンをダウンロードしリモートからの変換を試してみたのですが、
はじめに TensorFlowを理解する 計算グラフに対する理解 実践的なTensorFlowの理解 写像とは? 写像をTensorFlowのコードと合わせて見る プレースホルダーという概念 写像をメモリに乗せる メモリに載せた写像のプレースホルダーに値を与える ニューラルネットのアフィン層設計 数式おさらい コードで見る ニューラルネットの設計 2層のニューラルネットワーク 活性化関数 TensorFlow APIの活性化関数 ニューラルネットの順伝播 TensorFlowの実際 tf.InteractiveSession() 順伝播を試してみる 最後に 今回の記事に関する補足 ニューラルネットを理解するための関連記事 続きの記事 はじめに TensorFlowを本格的に活用し始めて感じていることがいくつかあります。 モジュールが異様に豊富で、どれを使えばいいか分からない プログラミング
XmsとXmxは、Java VMが使うヒープメモリサイズである。Java VMについてちょっと詳しく書かれた文書を読むと、New領域とかOld領域とか、さらにはEdenとかSurvivor(S1/S2)とか怪しげな単語が出てくるがそれである。アプリケーションが一般的に使うメモリがここだ。サーバの物理メモリの8分の1くらいから2分の1くらいまでの間が目安(かな)。 なお、XmsとXmxで指定した値が違うと、Java VMは最初にメモリをちょびっとだけ確保し、必要になれば拡張していく。この拡張時にオーバーヘッドが生じる(GCが走るからだろう)ため、これを嫌って、XmsとXmxは同じ値にして最初からどかっとメモリ確保してしまうのが現代の定石である。 -XX:MaxPermSizeは、PermGen領域の最大メモリサイズを指定する。これはPermanent領域を指し、ライブラリのために確保されるメ
Keras のバックエンドに TensorFlow を使う場合、デフォルトでは一つのプロセスが GPU のメモリを全て使ってしまう。 今回は、その挙動を変更して使う分だけ確保させるように改めるやり方を書く。 環境には次のようにしてセットアップした Ubuntu 16.04 LTS を使っている。 blog.amedama.jp サンプルとして動作させるアプリケーションには Keras が提供している MNIST データセットを CNN で認識するものを使う。 まずはこれをダウンロードしておこう。 同時に、セッションをクリアするパッチも追加しておく。 $ wget https://raw.githubusercontent.com/fchollet/keras/master/examples/mnist_cnn.py $ echo 'K.clear_session()' >> mnist_c
κeenです。 今回の話は別にRustに限ったものではないのですが、よくRustを始めたばかりの人がスタックとヒープが分からないと言っているのをみかけるので少しメモリの話をしますね。 厳密な話というよりは雰囲気を掴んで欲しいという感じです。 メモリは配列 プログラム(プロセス)のメモリには実行するプログラム(機械語)やグローバル変数/定数、関数の引数やローカル変数、その他プログラムで使うデータ領域などを置きます。 プロセスに割り当てられるメモリというのは、1つの巨大なのっぺらな配列みたいなものです。サイズも決まってます。64bit OSなら2^64 byteです。 0 2^64 +--------------- ----+ | | | | | ~~ | | +--------------- ----+ これは仮想的なメモリなので実際の物理メモリに2^64 byteの配列がドンと確保される訳
(この記事は Dave Cheney さんの Why Go? の翻訳です。) 数週間前、友人に「Goに注目に値するのはなんで?」と聞かれました。 彼は私がGoに情熱を注いでいることを知っていましたが、なぜ私が他の人もGoを気にするべきだと思っているのかを知りたいようでした。 この記事は、私がGoを重要なプログラミング言語だと考える、3つの大きな理由を紹介します。 メモリ安全 個人としては、私もあなたもC言語でメモリリークも危険なメモリの再利用もしないプログラムを書く事ができるでしょう。しかし、40年以上の経験から、集団としてのプログラマーはC言語で信頼できるプログラムを書けない事がはっきりしています。 コードの静的解析、 valgrind, tsan (訳注: たぶん ThreadSanitizer), -Werror といったツールは10年以上前から使えますが、それらのツールが広く認知さ
最近 Aurora の検証をしているので,今後は Aurora 関連の記事を書く機会が増えそう. 前提 RDS (Aurora MySQL) インスタンスタイプ : db.t2.medium DBInstanceClassMemory とは RDS のパラメータグループでは,特定の変数と演算子を使った動的な値設定ができる.今回は変数 DBInstanceClassMemory に関して調べたことと,計算が合わずに困ったことを書いておこうと思う. DBInstanceClassMemory は,名前だけを見るとインスタンスタイプごとに搭載されたメモリサイズのように思えるけど,実際には違っていて,RDS プロセスに割り当てられたメモリサイズのことを意味する.よって,搭載されたメモリサイズよりは確実に小さい値となる.その点はドキュメントにも書いてある. DBInstanceClassMemory
※RDSは使っていません。 負荷を見てみる DBサーバーの負荷状況を見てみます。 当時の監視ツールの画像がないのですが、以下の状況でした。 LA(Load Average)が突き抜けている リクエスト数は「常識的に考えて」それほどでもない メモリの使用量にあまり変化がない swapはしていない ストレージ容量を結構食っている WEBサーバーから見れば、処理待ちのままプロセスが処理されていない典型的なパターンだったと思います。 DBサーバーとしては、LAに対し、メモリの使用量があっていないように思われました。 仮説 上記の状態から、仮説を立てます。 スロークエリ が頻発しているのではないか メモリ が正しく割り当てられていないのではないか 各種ログ の設定が適切ではないのではないか 仮説を検証することで、対策をしていきます。 設定を見直す 上記の仮説の設定は、MySQLの設定ファイルである「
「アイドルは、人間よりアンドロイドの方が適しているのかもしれない。いつも笑顔で疲れないし、トイレにも行かない」――アンドロイド研究の第一人者として知られる、大阪大学の石黒浩教授はこう語る。 石黒研究室と、動画サービス「niconico」を運営するドワンゴ、ファッションビル「PARCO」を運営するパルコは2月15日、自律的に対話や学習ができる人工知能(AI)を搭載した女性型アンドロイド「U」を、ネットユーザーとともにアイドルとして育成するプロジェクトを発表した。 「U」は、「ニコニコ生放送」に“生主”として出演し、言葉やコミュニケーションを学習。PARCOの店舗で接客などを行う。プロジェクトを通じ、アンドロイドのアイドル「アンドロイドル」が社会で受けいられるかを検証する狙いだ。 「ニコ生」で学習して自律で会話、「ぐぬぬ」もその場で学習 「U」は、目や口がなめらかに動き、音声で発話できる女性型
MySQLのチューニングにおいて非常に重要となるメモリ(バッファ)関連のパラメータについて、 チューニングのポイント DSASのとあるDBサーバ(実メモリ4GB)の実際の設定値 をまとめてみます。 また、必要メモリの総量の計算や限界値を越えてないかチェックしてくれるスクリプトも紹介します。 是非、参考にしてみてください! まず最初に注意点を。 バッファには2つのタイプがあります。 グローバルバッファ スレッドバッファ グローバルバッファはmysqld全体でそのバッファが1つだけ確保されるもので、 これに対し、 スレッドバッファはスレッド(コネクション)ごとに確保されるものです。 チューニングの際にはグローバル/スレッドの違いを意識するようにしましょう。 なぜなら、スレッドバッファに多くのメモリを割り当てると、コネクションが増えたとたんにアッという間にメモリ不足になってしまうからです。 in
my.cnfの設定例について。以下、重要と思われる箇所をピックアップしてみた。 特に指定がない限り[mysqld]セクションの記述。値はあくまで例。 基本的なパラメータ [mysqld] user = mysql ←MySQLインスタンスの実行OSユーザがmysqlになる。 basedir = /usr/mysql ←MySQLバイナリのインストールディレクトリ。 datadir = /data/mysql ←DB領域のトップディレクトリ。新規DBが置かれる。 port = 3306 ←インスタンス起動時TCP/IP接続の受付ポート。 socket = /data/mysql/mysql.sock ←ローカルからの接続時に使用するソケットファイルの指定。 基本的にMySQLインスタンスの起動はrootかユーザmysqlで行う。 どちらにしてもプロセスオーナーはmysqlとなる。 datad
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く