Articles of jit

Probabilité que des compilateurs et des setters soient alignés par le compilateur

Ma question est assez simple: Q: Quelle est la probabilité qu’une méthode de lecture / définition soit intégrée au compilateur en Java? (Évidemment, il n’ya pas de réponse définitive à cela, mais d’autres informations seraient appréciées) Extra: Je comprends qu’il y a toujours une chance pour que le compilateur (Standard et JIT) décide de créer […]

Est-il possible de faire java.lang.invoke.MethodHandle aussi rapidement que l’invocation directe?

Je compare les performances de MethodHandle::invoke et celles de la méthode statique directe. Voici la méthode statique: public class IntSum { public static int sum(int a, int b){ return a + b; } } Et voici mon sharepoint repère: @State(Scope.Benchmark) public class MyBenchmark { public int first; public int second; public final MethodHandle mhh; @Benchmark […]

Comment écrire ou empaqueter un serveur Git en tant que Java Servlet ou Java Webapp?

Git est clairement génial et une variété de clients sont à la fois disponibles et faciles à installer pour toutes les plateformes. Cependant, il est un peu difficile d’obtenir un serveur Git opérationnel pour les équipes. Je suis un peu surpris de constater qu’il n’existe pas encore de serveur d’application ou d’application Web Java-Git facilement […]

Recalculer la méthode JVM JIT pour les méthodes pures

Analyse comparative du code Java suivant à l’aide de jmh : interface MyInterface { public int test(int i); } class A implements MyInterface { public int test(int i) { return (int)Math.sin(Math.cos(i)); } } @State(Scope.Thread) public class MyBenchmark { public MyInterface inter; @Setup(Level.Trial) public void init() { inter = new A(); } @Benchmark public void testMethod(Blackhole […]

Comment le code Java «dupliqué» est-il optimisé par le compilateur JVM JIT?

Je suis en charge de la maintenance d’une application basée sur JSP, s’exécutant sur IBM WebSphere 6.1 (IBM J9 JVM). Toutes les pages JSP ont une référence d’inclusion statique et dans ce fichier d’inclusion, certaines méthodes Java statiques sont déclarées. Elles sont incluses dans toutes les pages JSP pour offrir un “access facile” à ces […]

Est-il préférable de stocker la valeur en tant que variable ou d’appeler à nouveau la méthode?

Récemment, j’ai commencé à apprendre le Java. D’après ce que j’ai déjà appris sur la machine virtuelle Java, JIT accélère les opérations nécessitant des cycles de traitement (c’est-à-dire l’appel d’une méthode), mais lui donne également soif de mémoire. Ainsi, lorsque j’ai besoin de la même méthode de sortie que précédemment, est-il généralement préférable de stocker […]

Java: combien de temps une boucle vide utilise-t-elle?

J’essaie de tester la vitesse de l’autoboxing et du unboxing en Java, mais lorsque je tente de la comparer à une boucle vide sur une primitive, j’ai remarqué une chose curieuse. Cet extrait: for (int j = 0; j < 10; j++) { long t = System.currentTimeMillis(); for (int i = 0; i < 10000000; […]

Existe-t-il un moyen portable de savoir combien de fichiers une machine virtuelle a ouverts à partir de la machine virtuelle?

J’écris des tests pour certains codes de traitement de fichiers Java et je souhaite m’assurer que tous les fichiers sont correctement fermés. Je ne veux pas lancer ‘lsof’ car cela ouvrira plus de fichiers et rendra la suite de tests non portable. Quelqu’un sait-il comment faire cela?

Pourquoi getSum n’est pas en ligne avec hotspot JVM?

Voici l’exemple que j’ai essayé de reproduire à partir de Java Performance: Le guide définitif, page 97 sur l’ parsing d’évasion . C’est probablement ce qui devrait arriver: getSum() doit être suffisamment chaud et avec les parameters JVM appropriés, il doit être inséré dans l’appelant main() . Comme les variables list et sum n’échappent pas […]

Une équipe commune d’enquête peut-elle tirer profit des médicaments génériques?

Il est bien connu que les types génériques ne survivent pas au processus de compilation. Ils sont remplacés par des castes de classe. Mais néanmoins, les informations de type sont présentes dans le fichier de classe et peuvent être vues en utilisant la reflection public class Demo { private List list; public Demo() throws SecurityException, […]