├── .gitignore ├── LICENSE.md ├── README.md ├── labs-7 ├── build.gradle └── src │ └── main │ └── java │ └── ru │ └── gvsmirnov │ └── perv │ └── labs │ └── gc │ └── NoGcTrigger.java └── labs-8 ├── build.gradle ├── gradle ├── jni.gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── results └── time.md └── src └── main ├── c └── ChecksumCalculator.c ├── headers └── jni_exports.h └── java └── ru └── gvsmirnov └── perv └── labs ├── agent └── BloatedAgent.java ├── bugs ├── jdk8043188 │ ├── InterfaceWithField.java │ ├── InterfaceWithFieldAndDefaultMethod.java │ └── Main.java └── jdk8058847 │ └── Main.java ├── concurrency ├── TestSubject.java └── VolatileBenchmark.java ├── gc ├── Boxing.java ├── FixedBoxing.java ├── G1Demo.java ├── G1MemoryExhauster.java ├── MaxMemory.java ├── MetaspaceOom.java ├── NoGcTrigger.java ├── PhantomReferences.java ├── PrematurePromotion.java ├── SoftReferences.java ├── ThreadLocals.java └── WeakReferences.java ├── jit ├── AutoboxingElimination.java ├── ComparingBenchmark.java ├── DeadCode.java ├── EnumValues.java ├── EscapeAnalysis.java └── LoopConditionals.java ├── misc ├── Jol.java ├── LambdaOom.java └── ScopingTest.java ├── rekt └── ChecksumCalculator.java ├── safepoints ├── BiasedLocks.java ├── Deoptimization.java └── FullGc.java ├── time ├── ObsessedTimeKiller.java ├── PrecisionTest.java ├── Savior.java ├── TimeKiller.java └── TimeKillerBenchmark.java └── util ├── OrderedWrapper.java └── Util.java /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/README.md -------------------------------------------------------------------------------- /labs-7/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-7/build.gradle -------------------------------------------------------------------------------- /labs-7/src/main/java/ru/gvsmirnov/perv/labs/gc/NoGcTrigger.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-7/src/main/java/ru/gvsmirnov/perv/labs/gc/NoGcTrigger.java -------------------------------------------------------------------------------- /labs-8/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/build.gradle -------------------------------------------------------------------------------- /labs-8/gradle/jni.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/gradle/jni.gradle -------------------------------------------------------------------------------- /labs-8/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /labs-8/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /labs-8/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/gradlew -------------------------------------------------------------------------------- /labs-8/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/gradlew.bat -------------------------------------------------------------------------------- /labs-8/results/time.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/results/time.md -------------------------------------------------------------------------------- /labs-8/src/main/c/ChecksumCalculator.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/c/ChecksumCalculator.c -------------------------------------------------------------------------------- /labs-8/src/main/headers/jni_exports.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/headers/jni_exports.h -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/agent/BloatedAgent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/agent/BloatedAgent.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/bugs/jdk8043188/InterfaceWithField.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/bugs/jdk8043188/InterfaceWithField.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/bugs/jdk8043188/InterfaceWithFieldAndDefaultMethod.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/bugs/jdk8043188/InterfaceWithFieldAndDefaultMethod.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/bugs/jdk8043188/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/bugs/jdk8043188/Main.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/bugs/jdk8058847/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/bugs/jdk8058847/Main.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/concurrency/TestSubject.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/concurrency/TestSubject.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/concurrency/VolatileBenchmark.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/concurrency/VolatileBenchmark.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/Boxing.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/Boxing.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/FixedBoxing.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/FixedBoxing.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/G1Demo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/G1Demo.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/G1MemoryExhauster.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/G1MemoryExhauster.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/MaxMemory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/MaxMemory.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/MetaspaceOom.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/MetaspaceOom.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/NoGcTrigger.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/NoGcTrigger.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/PhantomReferences.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/PhantomReferences.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/PrematurePromotion.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/PrematurePromotion.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/SoftReferences.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/SoftReferences.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/ThreadLocals.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/ThreadLocals.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/WeakReferences.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/gc/WeakReferences.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/AutoboxingElimination.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/AutoboxingElimination.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/ComparingBenchmark.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/ComparingBenchmark.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/DeadCode.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/DeadCode.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/EnumValues.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/EnumValues.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/EscapeAnalysis.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/EscapeAnalysis.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/LoopConditionals.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/jit/LoopConditionals.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/misc/Jol.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/misc/Jol.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/misc/LambdaOom.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/misc/LambdaOom.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/misc/ScopingTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/misc/ScopingTest.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/rekt/ChecksumCalculator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/rekt/ChecksumCalculator.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/safepoints/BiasedLocks.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/safepoints/BiasedLocks.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/safepoints/Deoptimization.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/safepoints/Deoptimization.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/safepoints/FullGc.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/safepoints/FullGc.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/ObsessedTimeKiller.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/ObsessedTimeKiller.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/PrecisionTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/PrecisionTest.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/Savior.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/Savior.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/TimeKiller.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/TimeKiller.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/TimeKillerBenchmark.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/time/TimeKillerBenchmark.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/util/OrderedWrapper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/util/OrderedWrapper.java -------------------------------------------------------------------------------- /labs-8/src/main/java/ru/gvsmirnov/perv/labs/util/Util.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvsmirnov/java-perv/HEAD/labs-8/src/main/java/ru/gvsmirnov/perv/labs/util/Util.java --------------------------------------------------------------------------------