Cのポインタを整数に変換する Cのポインタを整数に変換したいときがあります。このとき問題になるのは、ポインタのサイズが int と同じとは限らないということです。たとえば、 x86_64 の 64ビットのバイナリでは sizeof(int) = 4, sizeof(void *) = 8 となります。ポインタと同じサイズの整数を使いたい場合は C99 で導入された stdint.h で提供される intptr_t または uintptr_t を使います。 stdint.h には他にも int32_t や int64_t など、サイズつきの整数の型も提供されています。たとえば、uint64_t を使うと、64ビットの符合なし整数を扱うことができます。 私の場合、C++ のプログラムで void * から直接 uint64_t にキャストしようとしてはまりました。次のプログラムを x86_32
最近メインの開発環境を Windows 10 にしたので、入れたソフトウェアのメモ。 MSYS2 https://msys2.github.io/ UNIX的なシェル環境。ターミナル(mintty)、シェル(bash)、パッケージマネージャ(pacman)が標準で入れるだけで使えるようになる。シェル操作は MYSY2 上に含まれる ターミナル mintty 上で bash を動かしてその上で screen やら git やら ssh やらいろいろ。 MSYS2で快適なターミナル生活 にまとめれているので、その他いくつかを。 ホームディレクトリ 標準だと C:\mysy64\home\ユーザ名 だが、自分は %USERPROFILE% (win のユーザディレクトリ)と同一のところをホームディレクトリとして使いたいので、環境変数 HOME を %USERPROFILE% に指定する。(環境変
Scikit-learnで使っていたnp.arrayデータセットをChainer (1.11)ですぐに使えなかったのでメモ. 用意するのは 学習データセット:train_X, train_y テストデータセット:test_X, test_y ここで train_X, test_Xは(サンプル数, 次元)のnp.array.通常float32. train_y, test_yは(サンプル数, )のnp.array.おそらくデフォルトでint64. sklearnの場合 from sklearn import svm clf = svm.SVC() clf.fit(train_X, train_y) # 学習 clf.score(test_X, test_y) # 予測・スコア計算 prob_X = clf.predict_proba(test_X) # 確率予測 # まずクラスを作る. cl
Visual* C++、GCC*、インテル® C++ コンパイラーなど、広く利用されているコンパイラーには様々な最適化オプションが用意されています。この連載では、C/C++ ソースのコンパイル時にパフォーマンスに影響する幾つかの最適化オプションの使い方とその効果を説明します。 第1回 第2回 第3回 第4回 第5回 最終回 第5回 明示的にベクトル化されたコードを記述する ソースコードを書いているときに、「ここはベクトル化しないと性能目標を達成できないな」、とオボロげに想像できることもあります。現状ではソースを記述してベクトル化レポートや、ガイド機能のオプションを利用してコンパイルしてみるまで、コードがベクトル化できるかどうかは分かりません。今回は明示的にベクトル化する、もしくはベクトル化の可能性の高いコードを記述する方法を考えてみましょう。 次の C 言語で記述されたコードを、いくつかの
英語が使えるようになりたい。英語ができさえすれば、世界が広がる。漠然と英語に対する憧れを抱いていたとき、英語上達完全マップと出会い、そして、英語上達完全マップを10ヶ月やってみたで紹介されている参考書をやりこんだ。独学で英語を話せるようになろう。 英語学習は、独学でできる。効率の良いしっかりとした教材を使うことで、あなたの英語力は劇的に向上する。 英語上達完全マップで英語を使えるようになった 僕は、英語が大嫌いだった。正直、5教科の中で一番嫌いだったのが英語だった。そんな英語が嫌いな奴でも英語嫌いを克服することができた。英語上達完全マップを10ヶ月やってみたを9ヶ月間実践した結果、TOEIC735点を取ることができた。私の元の英語力は共通テストの英語で250点満点中95点というかなり低いレベルだった。 TOEICで言えば、300点ないレベルだった。一般的な英語レベル以下の能力から、9ヶ月で
2016 - 07 - 18 Pythonでライフゲームを作った(Life Game on Terminal by Python programming) Programming 最近 ライフゲーム という ボードゲーム (?)があることを知り、自分もプログラムを書いて遊んでみた。 ライフゲーム とは 生命の誕生、進化、淘汰などのプロセスを簡易的なモデルで再現した シミュレーションゲーム の1つ。格子状のボードを用意し、その一つ一つを細胞に見立てる。各細胞は「生」か「死」のいずれかの状態を持ち、周囲の細胞の状態により、次の状態が決定される。 ある細胞Xは周囲の細胞8つの内、生きた細胞の個数 C によって次の状態が決まる。 過疎: C ≦ 1 の場合、Xの次の状態は「死」となる。 維持: C = 2 の場合、Xの状態は変化しない。 誕生: C = 3 の場合、Xの次の状態は「生」となる。 過
golangで小さいツールはいろいろ書いてみたけどWebアプリも書いてみようということで作ってみた. github.com 正直途中から飽きてきて,やっつけで作った感が否めない. ある程度機能作って書き直していこうと思っていたけど,ある程度の機能さえ作っていない. 何ができるアプリか ビデオを登録して, 見れます. 説明もつけれます. それだけです. (ログインとかヘルプとかリンクつけてみましたが,ハッタリです) テスト動画にはNHKのクリエイティブライブラリを使わせてもらいました. ライブラリとか 今回は自分に縛りを課していて, サーバサイドは標準ライブラリのみで実装している. (SQLのDriverだけはmattn/go-sqlite3を利用.twtyといいid:mattnさんには感謝.) アプリ自体もSPAとかじゃなくてベーシックなWebアプリ. golangだとWebAPI実装とか
大体動くようになってきたので公開。 github.com きっかけは、まず最初にkiloがあった。 github.com kiloはredis作者が作った、C言語で書かれた超ミニマムなテキストエディタだ。*1 「このコードを読めば、ベーシックなテキストエディタの実装方法が分かるはず」 と思って実装を読み、大体わかったので試しにRubyで書いてみるかとはじめてみたのが始まりだった。 そのうち「mrubyでも動くようにしてみるか〜」と思って、 必要そうなmruby-io-consoleを書いた。 というわけで、riloはkiloを参考にして、rubyでもmrubyでも動く(ように今のところなっている)超ミニマムなテキストエディタ。という感じだ。 今後の展望は ワンバイナリで動くようにする riloはriloで書く 対応プラットフォームを増やす カラースキーマをプラグインで書けるようにする vi
作成:2016/07/19 Web制作 > JavaScript無しで実装するCSS小技まとめです。細部にちょっとした動きを取り入れたいときなど、知っておくと便利なエフェクトをまとめました。 エンジニア速報は Twitter の@commteで配信しています。 メタ言語でなく、CSSで見たい方は「View Compiled CSS」でコンパイルして見てください。 ※CodepenのURLの末尾に「?editors=1100」を付与するとhtml/cssのみの編集画面で閲覧できるので、今回は全てのURL末尾に付与してます。 モーダルウィンドウ チェックボックスを使わないタイプ。擬似クラスである:targetを使い、アンカーリンク(#シャープ)にスタイルを適用しモーダルウィンドウを表示しています。 .foo:target { color: red; } :target擬似クラスを利用すれば、J
はじめに 分散ジョブ実行ツールであるApache Mesosがバージョン0.20.0でDockerをサポートして以来、Mesosは更に注目を集めてきました。今まではMesos-Slaveへジョブを実行させるための環境構築を、機能が追加される度に行わなければいけませんでしたが、その手間からはこのバージョンによって開放されたのです。 「・・・これは!」と思い早速使ってみようとCentOS 7へインストールを実施しようとしたが、手順がわからずに挫折した方も居るのではないでしょうか? そこで今回はmesosphereから提供されているrpmリポジトリを使用し、CentOS 7上へyumで簡単にインストールが可能なインストール手順から、UIの操作・curlコマンドによる Chronos / MarathonへのREST APIジョブ実行依頼を実施してみたいと思います。 注意点 本記事では、ジョブ
Architecture Commands Reference Capacity Scheduler Fair Scheduler ResourceManager Restart ResourceManager HA Resource Model Node Labels Node Attributes Web Application Proxy Timeline Server Timeline Service V.2 Writing YARN Applications YARN Application Security NodeManager Running Applications in Docker Containers Running Applications in runC Containers Using CGroups Secure Containers Reservation
Hadoop には大量のテストがある.中には疑似分散環境を用いたテストが存在するため,その実行には多くの時間を必要とする.本稿では,開発を効率化するために,どのようにしてテストを効率的に行うかについて述べる. 実行するテスト数の削減 明らかに関係のないテストをスキップする方法である.ただし,この方法を用いることができるのは,自分の変更したソースコードの影響範囲が,ある程度把握できる場合にのみに限られる. 特定のテストのみの実行 maven には,特定のテストクラスのみを実行する機能が備わっている.この機能を利用するには,以下のようにして実行したいテストクラスを指定する.
Outline HadoopのYARN上で色々なアプリを動かすことになったのでテスト環境を作ってみた。 今回はYARNに対して、sparkでもmapReduceでもない、普通のjar(hadoopへの依存が何もないjar)を実行してみる。 環境 メインマシン 実際に動かしているハード。 WebUIなどの動作確認に使う。 Client OS: Ubuntu14.04 (AWS EC2) Hadoop: 2.5.2 Java: 8 HDFSクラスタ 擬似分散モード:http://qiita.com/uryyyyyyy/items/a7ac8dc088b6fc2d115d 完全分散モード:http://qiita.com/uryyyyyyy/items/ebd732d3935ee404f4e7 ここではResourceManagerとnameNodeは同じhostにあるとする。 OS: Ubun
【分散型アーキテクチャを試してみる】第2章 〜Apache AmbariHadoop,YARN,Zookeeper,Spark編〜ZooKeeperApacheSparkYARNApacheZookeeper 【分散型アーキテクチャを試してみる】第2章 〜Apache Ambari,Hadoop,YARN,Zookeeper,Spark編〜 あらすじ 最近は日本にいなかったり、インタビューや講演ばっかり受けてて、Qiitaサボリ気味でしたが、少しずつ再開しようと思ってます。 膨大なデータを取り扱ったり、大規模向けシステムが当たり前になってきている中、機会がないと触れることがない分散型アーキテクチャを試してみようという事で、勉強会で使った資料を公開していきます。 ※後々、リクエストに応じて更新することが多いのでストックしておくことをおすすめします。 自分は某社でCTOをしていますが、頭でっか
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く