タグ

2016年9月23日のブックマーク (8件)

  • LLVM bitcode基礎知識 - Qiita

    iOS9からのアプリ最適化の仕組みAppThinningのため、Xcode7 betaからはアプリへのbitcodeの埋め込みがデフォルトで有効になりました。 https://developer.apple.com/library/prerelease/ios/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html http://qiita.com/usagimaru/items/cb19f283db4ac0cd8bd6 bitcodeとは何かを感じ取るためのエントリです。 続き Xcode7でのembed-bitcodeオプション http://qiita.com/gamako/items/4ebfd048c5aed4f68595 bitcodeとは LLVMのビルドフローは、ざっくり

    LLVM bitcode基礎知識 - Qiita
  • Javassist 入門

    Java Press vol. 35, pp.76--85, March 2004. Java プログラムの"舞台裏"大追跡 Javassist -- Java バイトコードを操作するクラスライブラリ -- 入門 先端J2EE サーバJBoss が,人知れず内部で行っていること 千葉 滋 東京工業大学・大学院情報理工学研究科 はじめに Java バイトコードを変換するライブラリとしては Jakarta BCEL が有名です。BCEL は Java クラスファイルのデータ構造を直接操作する場合には便利ですが、Java クラスファイルの内部仕様、つまり Java バイトコードに詳しくないと使いこなせません。一方、Java バイトコードにあまり詳しくない開発者でもバイトコード変換を実装できるようにするライブラリが Javassist です。 バイトコード変換 はっきりいって、つい最近までJava

  • The Java® Virtual Machine Specification

    Java SE > Java SE Specifications > Java Virtual Machine Specification The Java® Virtual Machine Specification Next The Java® Virtual Machine Specification Java SE 8 Edition Tim Lindholm Frank Yellin Gilad Bracha Alex Buckley 2015-02-13 Legal Notice Table of Contents Preface to the Java SE 8 Edition 1. Introduction 1.1. A Bit of History 1.2. The Java Virtual Machine 1.3. Organization of the Specifi

  • Javaバイトコードの読み方 - プログラマーの脳みそ

    Javaのデバッグをしていて、ステップ実行中にステップインを繰り返したらソースコードのないところに行き当たったことがあるだろう。あるいはEclipseでF3キーでクラスやメソッド・フィールドの宣言元を辿っていってソースコードのないところに行き当たったことがあるだろう。 Eclipseの場合、"Class File Editor"というものが開く。そこにはJavaのバイトコードのニーモニックがズラズラと並んでいて、「これは読めないや、ワケが分からない」と投げ出してしまったりしていないだろうか。 怖がることはない。ちょっとコツを掴めばすぐに読めるようになる。 Class File Editorの開き方 自前のJavaクラスの場合、ビルドして出来上がったclassファイルを開く必要がある。"Package Explorer"だとclassファイルは隠されていて見えないのでWindow -> Sh

    Javaバイトコードの読み方 - プログラマーの脳みそ
  • JVM Backend and Optimizer in Scala 2.12

    JVM Backend and Optimizer in Scala 2.12 Lukas Rytz, Scala Team @ Typesafe Scala 2.12 on one Slide • Move to Java 8: enjoy new VM and library features ↣ Interop for functions: source and bytecode ↣ Make use of default methods ↣ Interop with Java (parallel) streams • New optimizer ↣ Configurable, more reliable, better diagnostics ↣ Fewer bugs (inline trait methods) 2 Agenda • Move to Java 8 ↣ Intero

  • JVMのバイトコードの実行時最適化について発表してきた - Maverick Techlab

    こんにちは、todeskingです。 ScalaMatsuri 2016将軍スポンサーが合同で開催した「Scala将軍達の後の祭り」 というイベントで、バイトコードの実行時最適化について発表してきました。 抽象化によってオーバヘッドが存在するコードを実行時にバイトコードレベルで最適化すれば、抽象化とパフォーマンスが両立出来てお得、という夢のある話です。 以下、補足など。 なぜ実行時に最適化するのかこれにはいくつか理由があって、 安全性クラスの解決は実行時に行われるため、コンパイル時と実行時で見えているクラスが違うということがありえます。 そのため、静的に大域的な最適化をする場合は、実行時にクラスパスが変化しないことを保証する必要が出てくる解析が楽実際に構築されたインスタンスを元に最適化できるので、フィールドの値に基づく最適化が楽柔軟性実行時になるまでインスタンスの内容が確定しない場合(外部

    JVMのバイトコードの実行時最適化について発表してきた - Maverick Techlab
    tanishiking24
    tanishiking24 2016/09/23
    Section 4-6をじゅくどくすればだいじょうぶです(多い)。
  • Java Just-In-Time コンパイラ

    © 2002 IBM Corporation IBM Research, Tokyo Research Laboratory PPL Summer School 2004 | 9/14/2004 | Just In Time... Java Just-In-Time Kazuaki Ishizaki IBM Research, Tokyo Research Laboratory Java Just-In-Time | PPL Summer School 2004 | © 2004 IBM Corporation 2 � – – – – � – – IBM Research, Tokyo Research Laboratory Java Just-In-Time | PPL Summer School 2004 | © 2004 IBM Corporation 3 � � � � � – I

  • 恐怖の JVM 大量メモリ消費!メモリリークの謎を追え!! - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、ミドルウェア開発チームの青木(@a_o_k_i_n_g)です。将来の夢は川口浩探検隊に入ることです。 先日、弊社のアプリケーションサーバーで大量にメモリを消費するという現象に遭遇しました。アクセス頻度の低いサーバーがメモリを大量消費するという謎深いものでした。 発生当初の状況はこんな感じです。 アプリケーションサーバーでは Jetty が稼働 現象が発生した JVM は 5GB 程度のメモリを消費しており、明らかに通常ではない量のメモリを消費している 複数台のサーバーで発生していたが、全てで発生したわけではない。 また、発生したサーバーはいずれもアクセス頻度が少ないサーバーだった。 ヒープ、パーマネント、スタック ひとまず、JVM でトラブルが発生した時は何はともあれヒープダンプとスレッドダンプを見るに限ります。各種情報の取得をインフラ部隊へ依頼し、得られたヒープを解析すると、

    恐怖の JVM 大量メモリ消費!メモリリークの謎を追え!! - Cybozu Inside Out | サイボウズエンジニアのブログ