async-profiler
array
async-profiler | array | |
---|---|---|
8 | 6 | |
5,883 | 45 | |
- | - | |
8.4 | 0.8 | |
about 1 year ago | about 1 year ago | |
C++ | Kotlin | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
async-profiler
-
Migrating a Spring Boot application to Quarkus
Using the Async Profiler we were able to build flamegraphs for the first and second queries to picture the differences in path length of the two transactions execution.
-
Making Code Faster
> The other two languages I’ve used mostly in recent decades are Java and Ruby and the profiler situation is for both those languages is kind of shitty. I had to pay real money to get the Java profiler I used at AWS and while it worked, it was klunky, not fun to use.
These days, async profiler (https://github.com/jvm-profiling-tools/async-profiler) is much better than the Go tooling for performance. It is a joy to use and features a top-like view for the hottest methods. It works for locks, allocations and CPU time. It also integrates with JMH.
-
Why would a Java prime sieve run at only half its speed _some_ of the times?
Also, running it under a profiler (I recommend async-profiler[1]) should give you a good idea of where the slowdown occurs which might help you pin it down further.
[1] https://github.com/jvm-profiling-tools/async-profiler
-
Is there a way to know if my java game is slow on other computers?
Profile it. async-profiler is really great. Alternatively you can check out VisualVM/JProfiler/YourKit
- Best performance monitoring tools?
-
Rust Option 30x more efficient to return than Java Optional
async-profiler is really great at analyzing allocations, give it a shot!
-
Ask Java: what are some JFR-based tools that you enjoy?
JFR to Flame Graph Converter
-
Utility script for generating flamegraphs from JFR logs without dependencies.
Async Profiler converter tool does support JFR to Flame Graph, JFR to FlameScope, collapsed stacks to Flame Graph -https://github.com/jvm-profiling-tools/async-profiler#download
array
-
Ngn/k (free K implementation)
In some of the example programs written in KAP (my APL derivative), I tried to write it in a style that makes people unfamiliar with the array style more comfortable.
This code could of course have been written in a style similar to some of the more extreme examples, and they would have been significantly shorter in that case.
https://github.com/lokedhs/array/blob/master/demo/advent-of-...
-
Why would a Java prime sieve run at only half its speed _some_ of the times?
This issue isn't directly related to BitSet. I have observed the same thing in my programming language interpreter that runs on the JVM (well, it's written in Kotlin multiplatform so it runs on JS and Natively as well).
I start the interpreter and measue the time it takes to all all then numbers below 1000000000.
The first time I run it after starting the interpreter it always takes 1.4 seconds (within 0.1 second precision). The second time I measure the time it takes 1.7, and for every invocation following that it takes 2 seconds.
If I stop the interpreter and try again, I get exactly the same result.
I have not been able to explain this behaviour. This is on OpenJDK 11 by the way.
If anyone wants to test this, just run the interpreter from here: https://github.com/lokedhs/array
To run the benchmark, type the following command in the UI:
time:measureTime { +/⍳1000000000 }
- Is APL Dead?
- Symbolic Programming
-
Try APL
I'm the opportunity to mention my project that implements a language that is inspired by, and is mostly compatible with APL. It has some major differences, such as being lazy evaluated and providing support for first-class functions.
It also supports defining syntax extensions which is used by the standard library to provide imperative syntax, which means you can mix traditional APL together with your familiar if/else statements, etc.
At this point there isn't much documentation, and the implementation isn't complete, so I'm not actually suggesting that people run out to try it unless they are really interested in APL. I just took this opportunity since APL is mentioned so rarely here.
https://github.com/lokedhs/array
There is an example of a graphical mandelbrot implementation in the demo directory, that may be interesting.
-
Why am I wasting time on EndBASIC?
This post mirrors my feeling on this topic as well. Just like the author, I'm also working on a programming language which will not be used by a lot of people.
In fact, having a lot of users would make things complicated as I would have to stop making incompatible changes if I want to try something new.
Designing your own programming language is such a nice hobby, and something I believe a lot of programmers do. In fact, I would like to see links to other people's programming languages, just to see what people are playing around with at the moment.
Here is my project: https://github.com/lokedhs/array
What are some alternatives?
container-jfr - Secure JDK Flight Recorder management for containerized JVMs
BQN - An APL-like programming language. Self-hosted!
junit-jfr - a JUnit 5 extension that generates JFR events
ride - Remote IDE for Dyalog APL
jmh - https://openjdk.org/projects/code-tools/jmh
ngn-apl - An APL interpreter written in JavaScript. Runs in a browser or NodeJS.
jfr-libraries - a list of libraries that generate JFR events
j-prez
Arthas - Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas
jelm - Extreme Learning Machine in J
opentelemetry-java-instrumentation - OpenTelemetry auto-instrumentation and instrumentation libraries for Java
json - A tiny JSON parser and emitter for Perl 6 on Rakudo