Code Archive Skip to content Google About Google Privacy Terms
2007 JavaOneSM Conference | Session TS-2885 | TS-2885 High Performance Java Technology in a Multi-Core World David Dagastine Paul Hohensee VM Technologies Sun Microsystems, Inc. http://java.sun.com 2007 JavaOneSM Conference | Session TS-2885 | 2 What To Expect Learn about today’s multi-core architectures and the Java™ Virtual Machine (JVM™ Tool) technologies and software optimization techniques to
概要 Android用のDIコンテナDaggerのパフォーマンスをGuiceと比較しました。 Dagger自体の使い方などは述べていませんので、公式サイトのドキュメントなどを参照してください。 DaggerはSquare社製のAndroidをターゲットにしたDIコンテナです。 開発者の一人であるJesse Wilson氏がプレゼンテーション(InfoQ - Dagger: A Fast Dependency Injector for Android and Java)のなかで It's like Guice, but with speed instead of features と述べているように、Guiceと同じくJSR330のAnnotationを使ってオブジェクトの依存関係を記述します。また、上述のとおりGuiceでサポートされている機能のいくつかはサポートしないかわりにパフォーマン
2009年1月31日に64 bit Ubuntu を導入したので、 64 bit gcc での動作確認、性能評価、チューニングの作業をしました。 新しく開発しました(64 bit 非対応) jump.c.html : Xorshift で戻ったり一瞬で相対ジャンプできるプログラム 浮動小数点数に特化した乱数ライブラリ(SSE2対応) zdsfmt.zip : ライブラリ本体一式 libZD.zip : エクセルのためのダイナミック・リンク・ライブラリ(DLL)一式 32ビット整数の生成は他のに比べ少し遅くなりますが、浮動小数点数の生成はかなり高速です。 元のメルセンヌ・ツイスタを使った乱数ライブラリ(SSE3対応) zmtrand.zip : ライブラリ本体一式 libZMT.zip : エクセルのためのダイナミック・リンク・ライブラリ(DLL)一式 マクロ HAVE_SSE3 を定義して
最近、乱数について興味があって、いろいろ調べてたら、java.util.Randomはひとつめの値が乱数としては使い物にならないくらい偏りがあるらしい。 試しにこんなプログラムを書いてみます。 public class RandomRange { public static void main(String[] args){ Random r = new Random(); double min = Double.MAX_VALUE; double max = Double.MIN_VALUE; for(int i = 0; i < 1000; ++i){ r.setSeed(i); double x = r.nextDouble(); if(x > max) max = x; if(x < min) min = x; } System.out.printf("min=%.4f max=%
JEP 118: Access to Parameter Names at Runtime http://download.java.net/jdk8/docs/api/java/lang/reflect/Parameter.html#getName() Java8で実行時に Parameter#getName でメソッドの引数の名前がとれる感じです。 やってみる こんなクラスのー public class Hoge { public void method1(String hoge) { } public void method2(Object fuga, Object piyo) { } } メソッド名と引数を引っ張り出すと、こう出る。 method1[ java.lang.String hoge] method2[ java.lang.Object fuga, java.lang.O
Apacheのアクセスログ(commonあるいはcombined形式)をLTSVに変換するツールをJavaで書いてみた。 使い方: mcp.jarをダウンロードし、 cat access_log | java -cp mcp.jar net.jumperz.app.MCP.MCP net.jumperz.io.multicore.example.MCombined2LTSV パースするコードそのものはこんな感じで普通。正規表現は使っていない。たぶんJava1.4以上でコンパイル可能。 こういう処理をさくっとマルチコア対応にするためのフレームワーク、MCPというのを作ったので、早速利用してみると、手元の4コアのマシンでは約140万行/秒(common形式のログ)という爆速で変換が終了する。dankogai氏が書かれているperlスクリプトより約20〜30倍速い(正規表現を使うかどうかという点
This is Speed4j, a very simple (but fast) Java performance analysis library. It is designed using Perf4j as a model, but hopefully avoiding the pitfalls inherent in Perf4j's design. Also, Perf4j does not seem to be seeing a lot of development these days... Speed4j has a dependency on SLF4J (see http://slf4j.org), which it uses to log its workings, but no other dependencies. INSTALLING ========== S
Overview Perf4J is a set of utilities for calculating and displaying perfomance statistics for Java code. For developers who are familiar with logging frameworks such as log4j or java.util.logging, an analogy helps to describe Perf4J: How is this relevant to Perf4J? Consider that before good logging frameworks were widely available, developers new to Java would often print debugging statements us
Overview ContiPerf is a lightweight testing utility that enables the user to easily leverage JUnit 4 test cases as performance tests e.g. for continuous performance testing. It is inspired by JUnit 4's easy test configuration with annotations and by JUnitPerf's idea of wrapping Unit tests for performance testing, but more powerful and easier to use: Using Java annotations for defining test executi
Co-author: Moira Tagle Today we are announcing the open-sourcing of Rest.li, a piece of infrastructure developed and used here at LinkedIn. Rest.li is a REST+JSON framework for building robust, scalable service architectures using dynamic discovery and simple asynchronous APIs. We feel that Rest.li fills a niche for building RESTful service architectures at scale, offering a developer workflow for
一文字:char [/2010-06-20] 不変の文字列:String [/2023-09-24] 可変の文字列:StringBuffer/StringBuilder [/2023-09-24] StringWriter(PrintWriter)/PrintStream [/2009-02-14] StringJoiner [2014-03-19] コードポイントの例 [2017-01-28] 文字のStream [2014-04-29] 文字列の結合 [2007-07-01] 単独の結合の実行時間 ループ内結合の実行時間 +演算子の実態 [/2008-01-27] 結論 [/2014-04-29] 文字列の比較方法 [2008-04-16] 文字列比較の書き順 [2008-05-02] 半角カタカナ・全角ひらがな変換 [2012-06-15] 半角英数変換 [2014-04-29] c
「あばばばばばばばば」 はい、この記事は、「じゃば あばばばば かれんだー - 邪 2010」の9日目、12/21日のものですのよ? 昨日は、id:nekopのBytemanによるJava黒魔術 - nekopの日記でした。このBytemanが利用している「Java(TM) java.lang.instrument」を利用したもうひとつの例として、JRebelというプロダクトを利用した動的なクラス再ローディングについて、ちょいと紹介しようと思いますのよ奥さん? そもそもjava.lang.instrument APIってなんぞ? Instrument APIは、監視/観察の対象となるアプリケーションのバイトコードをほかのバイトコードに置き換える(BCIを行う)ための枠組みを提供する。置き換えの方法としては、以下の2とおりが提供されている。 ●クラスがロードされる過程に割り込み、そのバイトコ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く