タグ

関連タグで絞り込む (969)

タグの絞り込みを解除

Javaとjavaに関するyassのブックマーク (1,355)

  • ななめ45°から見たJavaOne

    JDK Mission Control: Where We Are, Where We Are Going [Groundbreakers APAC 20...

    ななめ45°から見たJavaOne
  • マルチコア時代のプログラマは関数脳になろう〜Java8のススメ〜 - Tech-Sketch

    CPUのクロックアップに限界が訪れ、マルチコア化することで処理性能向上を目指す時代になりました。これからのプログラマには、マルチコアで処理性能が向上するプログラム=マルチスレッドで並列処理が可能なプログラムを書く能力が必要になります。今回は「関数型」でプログラムを書くことによって、いとも簡単に並列化ができることを実例を元に解説します。 関数型プログラミングと並列処理 「関数型でプログラムを書くことで簡単に並列化できる」と書きましたが、そもそもここで言う「関数」とは何なのでしょうか? 関数型プログラミングの特徴 関数型プログラミングの「関数」を理解するためには、数学における「関数」を想像するとわかりやすいでしょう。 例えば三角関数を用いた y=cos(x) という式を考えてみます。この式に入力値 x=0 を与えた場合、いつでも必ず結果は y=1 になります。x= π/3 の場合は y =

    yass
    yass 2013/08/12
    "関数型プログラミングってなんだか面倒で難しそうですが、大きなメリットがあります。「処理が簡潔になり共通化やテストしやすいこと」や「並列化しやすいこと」などです。"
  • HotSpot JVM garbage collection options cheat sheet (v2)

    In this article I have collected a list of options related to GC tuning in JVM. This is not a comprehensive list, I have only collected options which I use in practice (or at least understand why I may want to use them). Compared to previous version a few useful diagnostic options was added. Additionally section for G1 specific options was introduced. PDF version

    yass
    yass 2013/08/11
    " This is not a comprehensive list, I have only collected options which I use in practice (or at least understand why I may want to use them). "
  • Garbage collection

    yass
    yass 2013/08/11
    " Articles related to garbage collection in JVM "
  • Java Support for Large Memory Pages

    Beginning with Java SE 5.0 there is a cross-platform flag for requesting large memory pages: -XX:+UseLargePages (on by default for Solaris, off by default for Windows and Linux). The goal of large page support is to optimize processor Translation-Lookaside Buffers. A Translation-Lookaside Buffer (TLB) is a page translation cache that holds the most-recently used virtual-to-physical address transla

    yass
    yass 2013/08/11
    " Beginning with Java SE 5.0 there is a cross-platform flag for requesting large memory pages: -XX:+UseLargePages (on by default for Solaris, off by default for Windows and Linux). The goal of large page support is to optimize processor Translation-Lookaside Buffers. "
  • Network Attached Processing の Pauseless GC

    更新履歴 (2005.11.18) 脚注*2を加筆。 (2005.11.17) 文章を推敲。 (2005.11.14) NMT bit の read barrier について嘘を書いていたので修正。 目次 前置き Pauseless GC Marking Phase Relocation & Remap Phase おしまい 参考文献 Azul Sysmtes (米日) は Java や .NET に特化した専用計算機 Network Attached Processing (NAP) を提唱し、 製品として Azul Compute Appliance を開発した。 Azul Compute Appliance は、 すでに稼動中の Solaris/Linux の J2SE/J2EE システムの Java VM を Azul Systems が提供するスタブ JVM に置き換えるだけで、

    yass
    yass 2013/08/11
    " Pauseless GC は理論上 STW がない。 にも関わらず性能もあまり悪くないというキ印もの / 注目すべきは Pauseless GC は「オブジェクトの移動」をやるタイプの GC だという点"
  • https://blogs.oracle.com/poonam/understanding-cms-gc-logs

    yass
    yass 2013/08/11
    " CMS GC with -XX:+PrintGCDetails and -XX:+PrintGCTimeStamps prints a lot of information. Understanding this information can help in fine tuning various parameters of the application and CMS to achieve best performance. "
  • How to Tune Java Garbage Collection - Sematext

    Working with Java applications has a lot of benefits. Especially when compared to languages like C/C++. In the majority of cases, you get interoperability between operating systems and various environments. You can move your applications from server to server, from operating system to operating system, without major effort or in rare cases with minor changes. One of the most interesting benefits o

    yass
    yass 2013/08/11
    " In short, we are seeing some more GC work done on the Young generation with G1, but a lot less work being done with the Old generation and thus we see far fewer long pauses than with CMS garbage collector! "
  • ページが見つかりません | 日本HP

    ページが見つかりません。 目的のページは、移動または削除によって無効になっている可能性があります。申し訳ありませんが、検索またはリンク先よりお探しください。

    yass
    yass 2013/08/11
    "Parallel Remarkでは、アプリケーションを一時停止し、Concurrent Mark実行中のアプリケーション処理によって生じた変化分について追加のマーク付けを行う。Old領域全体のわずかな部分で済むため、ごく短時間の一時停止で済む"
  • no.23 Java Performance Tuning Newsletter

    yass
    yass 2013/08/11
    " 見張っておくべき GC の統計情報: GC に費やした時間の総計 (目標は実行時間の15%以内); GC 1回あたりの平均時間;GC 1回あたりで収集されたメモリの平均;GC 1回あたりに収集されたオブジェクト数の平均。"
  • GCで止まらないように - 晴れ時々開発@ポートランド

    TheServerSide.COM - http://www.theserverside.com/ - の記事で、ガーベジコレクションについての記事が出てたので、読んでみた。ほぼ既知だけど、確かに意識しないと忘れちゃう内容かも。 自分なりにまとめてみると: ガーベジコレクションの速さは、オブジェクトのサイズではなく、数に依存する。 長い間生存するオブジェクトで影響を受ける(これは、最近のJavaの GCのアルゴリズムを見ると確認できるけど、短期の生存オブジェクトと、長期の生存オブジェクトみたいな風に分けられる。その中の、ずーっと生き残るオブジェクトの方。メソッドのローカル変数じゃなくて、メンバとか、その他のオブジェクトの方って考えるのが比較的わかりやすいかも)。 これらのオブジェクトを開放するときに、全てのスレッドがスキャンされるので、気をつける。 Performanceの分析をして、In

    GCで止まらないように - 晴れ時々開発@ポートランド
    yass
    yass 2013/08/11
    "ガーベジコレクションの速さは、オブジェクトのサイズではなく、数に依存する。"
  • The Top 100 Java Libraries in 2018 - Based on 277,975 Source Files | OverOps Blog

    Accelerate innovation velocity with a modern DevOps toolchain.

    The Top 100 Java Libraries in 2018 - Based on 277,975 Source Files | OverOps Blog
    yass
    yass 2013/08/11
    " When an EC2 instance and S3 bucket were in the same location, the fastest upload time was achieved in Oregon and the slowest in Virginia. - California’s combined upload time was the best."
  • jSuffixArrays: Suffix Arrays for Java

    Many suffix sorting algorithms, including: Kärkkäinen and Sanders' skew, divsufsort, SA-IS, Klaus-Bernd Schürmann's bpr algorithm, Deep-Shallow and Larrson and Sadakane's qsufsort. Suffix arrays are frequently used in text processing and biological computation. Many efficient algorithms exist for their construction, this project attempts to implement some of them in Java so that they can compete w

    yass
    yass 2013/08/09
    "Many suffix sorting algorithms, including: Kärkkäinen and Sanders' skew, divsufsort, SA-IS, Klaus-Bernd Schürmann's bpr algorithm, Deep-Shallow and Larrson and Sadakane's qsufsort."
  • Javaガベージコレクションのエッセンス

    あるアプリケーションの作業にとって、スループットは最も重要なターゲットです。1つ例を挙げると、長時間実行されるバッチ処理のジョブです。ガベージコレクションが実行されている間、バッチジョブが時々1、2秒止まっても、ジョブ全体がすぐに完了すれば問題ありません。 人間が直接対話するアプリケーションから金融取引システムまで、実質的な他のすべての作業では、システムが1、2秒か、数ミリ秒以上反応しない場合、大変なことになり得ます。金融取引では、しばしば一貫した停止時間と引き換えに、スループットを犠牲にするだけの価値はあります。物理的に利用可能なメモリ量によって制限されるアプリケーションを持ったり、footprintを維持しなければならなかったりすることもあります。そのような場合、停止時間とスループットの面の両方で、パフォーマンスをあきらめなければなりません。 以下のトレードオフは度々起こります。 大部

    Javaガベージコレクションのエッセンス
    yass
    yass 2013/08/05
    Martin Thompson "ヒープメモリ割り当ては、Cランタイムからmallocを使うよりも、コストがかかりません/ CMSは、スループットの削減やコストのかかるminorコレクション、より大きなfootprintを犠牲にして、FullGCの発生を抑えます"
  • 成熟のチェックサムアプリケーション Jacksum 1.6.0公開 | エンタープライズ | マイナビニュース

  • JDistlib—Java Statistical Distribution Library

    A Java package that provides routines for various statistical distributions. Main Features Computation of the density (pdf), cumulative (cdf), quantile, and random variates of many popular statistical distributions, such as Ansari-Bradley, Beta, Binomial, Cauchy, Chi square, Exponential, Fisher's F, Gamma, Geometric, Hypergeometric, Kendall, Logistic, Log normal, Negative binomial, Noncentral beta

    yass
    yass 2013/08/03
    " Computation of the density (pdf), cumulative (cdf), quantile, and random variates of many popular statistical distributions "
  • 軽量なTime-based ID生成器”shakeflake(仮称)”について | SmartNews開発者ブログ

    大平です。今回はさだまさしネタは特に無しです。 先日、サービスのクローラーで使用しているID生成器について置き換えを行いました。非常に地味な話になりますが、記事ではその辺の内幕の話をしたいと思います。  ID生成にまつわる苦悩 弊社ゴクロの提供しているSmartNewsは表向きはニュースアプリですが、裏側の仕組みは検索エンジンに近似しています。ユーザーの方々の興味関心や、アクセス傾向をクエリーとし、その内容に応じた話題のニュースを検索結果として返却する、という風に捉えていただくと、なんとなく私が言わんとしている事を想像していただけるかと思います。 SmartNewsはTwitterのつぶやき情報を用いたトレンド分析をベースとしており、話題になっているニュースを選定するためには、大量のTwitter上のtweet、ならびにその中に含まれているURLに対してクロールを行う必要があります。日々

  • FindBugs の @NonNull @CheckForNull アノテーション - あるプログラマの日記

    FindBugs の @NonNull アノテーションで引数や戻り値が null でないことを明示すると、可読性もよくなるし、間違って null の引数を指定したり、null を返すコードを書くと、FindBugs の指摘が入るので、不要な null チェックの冗長なコードが減少する。 import edu.umd.cs.findbugs.annotations.NonNull; .. @NonNull public String get(@NonNull String key) { .. return .. } .. 逆に、どうしても null の引数指定や null の戻り値が発生する場合は @CheckForNull アノテーションを付けて null チェックコードを書くように明示することができる。こちらは null チェックがないと FindBugs が指摘してくれる。 impor

    FindBugs の @NonNull @CheckForNull アノテーション - あるプログラマの日記
  • JavaでIDEのアクセッサ生成よりlombokを使ったほうがいい理由 - きしだのHatena

    lombokは、JavaでのアクセッサやtoString、equalsなどボイラープレートなコードをコンパイル時に生成してくれるライブラリです。 ただ、こういったコードの生成は、IDEを使えば自動で行えるので、わざわざlombokを導入するまでもないと考えることもできますが、ぼくはlombokを導入するべきだと考えて、lombokを使うようにしました。 このとき「lombokを導入するべき」と考えた理由を書いておきます。 lombokとは lombokは冒頭でも書いたように、Javaのアクセッサなどを生成してくれるライブラリです。 Project Lombok import lombok.*; @Setter @Getter @AllArgsConstructor @NoArgsConstructor @ToString public class LombokSample { privat

    JavaでIDEのアクセッサ生成よりlombokを使ったほうがいい理由 - きしだのHatena
  • 3 billion items in Java Map with 16 GB RAM

    3 billion items in Java Map with 16 GB RAM One rainy evening I meditated about memory managment in Java and how effectively Java collections utilise memory. I made simple experiment, how much entries can I insert into Java Map with 16 GB of RAM? Goal of this experiment is to investigate internal overhead of collections. So I decided to use small keys and small values. All tests were made on Linux

    yass
    yass 2013/07/30
    " -XX:MaxDirectMemorySize=15G -Xmx128M. / Delta-key compression is active by default on all examples. "