blob: 89dae176130f4fd1a836e061f344a72760008c78 [file] [log] [blame]
{"componentChunkName":"component---src-pages-news-js","path":"/news/","result":{"data":{"allWordpressPost":{"nodes":[{"id":"2448bd6d-c62a-5f4c-9415-052246a5b89b","title":"Arraylets: What are They?","date":"02 June 2020","excerpt":"<p>Garbage Collectors (GCs) are responsible for allocating and deallocating objects making sure the running application run as smoothly as possible. There are many types of GC configurations out there, mark sweep, generational, region based, concurrent, parallel, reference counting [1] and a combination of these. The way we represent objects in each of these configurations, also&#8230;</p>\n","link":"https://blog.openj9.org/2020/06/02/arraylets-what-are-they/"},{"id":"028eea95-c100-5b56-a4af-d5ec8702efaf","title":"Manipulating the Class File with AsmTools","date":"27 May 2020","excerpt":"<p>A Java class file is represented with a hardware &amp; OS independent binary format to be loaded &amp; interpreted at runtime. Except the magic number (the first 4 bytes such as CAFEBABE) and the version number (the 8th byte) which are visible or can be manually edited in a hexadecimal way, modifying the majority of&#8230;</p>\n","link":"https://blog.openj9.org/2020/05/27/manipulating-the-class-file-with-asmtools/"}]},"allMarkdownRemark":{"edges":[{"node":{"id":"5c689f44-7f9e-5afb-8d99-37fbbda2aa6f","html":"<!--\nCopyright (c) 2017, 2020 IBM Corp. and others\n\nThis program and the accompanying materials are made available under\nthe terms of the Eclipse Public License 2.0 which accompanies this\ndistribution and is available at https://www.eclipse.org/legal/epl-2.0/\nor the Apache License, Version 2.0 which accompanies this distribution and\nis available at https://www.apache.org/licenses/LICENSE-2.0.\n\nThis Source Code may also be made available under the following\nSecondary Licenses when the conditions for such availability set\nforth in the Eclipse Public License, v. 2.0 are satisfied: GNU\nGeneral Public License, version 2 with the GNU Classpath\nException [1] and GNU General Public License, version 2 with the\nOpenJDK Assembly Exception [2].\n\n[1] https://www.gnu.org/software/classpath/license.html\n[2] http://openjdk.java.net/legal/assembly-exception.html\n\nSPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception\n\nThe project website pages cannot be redistributed\n-->\n<h3>Eclipse OpenJ9 version 0.21.0 released</h3>\n<p><em>20 July 2020</em></p>\n<p>OpenJ9 version 0.21.0 supports OpenJDK version 8, 11, and 14. OpenJDK builds that contain version 0.21.0 are now available from the AdoptOpenJDK community project:</p>\n<ul>\n<li><a href=\"https://adoptopenjdk.net/releases.html?variant=openjdk8&#x26;jvmVariant=openj9\" target=\"_blank\" rel=\"nofollow\">OpenJDK version 8</a></li>\n<li><a href=\"https://adoptopenjdk.net/releases.html?variant=openjdk11&#x26;jvmVariant=openj9\" target=\"_blank\" rel=\"nofollow\">OpenJDK version 11</a></li>\n<li><a href=\"https://adoptopenjdk.net/releases.html?variant=openjdk14&#x26;jvmVariant=openj9\" target=\"_blank\" rel=\"nofollow\">OpenJDK version 14</a></li>\n</ul>\n<p>This release of OpenJ9 sees several performance enhancements: </p>\n<ul>\n<li>If the <code>-Xtune:virtualized</code> command line option is used, the default JIT scratch memory limit is now reduced from 256 MB to 16 MB. This reduces the peak from JIT compilation activity, allowing you to size containers more easily, based on the particular application's memory usage.</li>\n<li>If the JIT is running in a container and no swap space is defined, the JIT dynamically adjusts its scratch memory consumption based on the amount of free physical memory available, to avoid out-of-memory (OOM) occurrences.</li>\n<li>Several performance features were added to the AArch64 JIT compiler implementation that led to a throughput improvement on multiple applications of at least 20%. The most notable improvements were seen in global register allocation, recompilation (without profiling), CUDA support, concurrent scavenge GC policy, and the inlined code sequence for object allocations.</li>\n</ul>\n<p>In this release, we've introduced two new options:</p>\n<ul>\n<li><code>-XX:[+|-]HandleSIGABRT</code> affects the handling of the operating system signal <code>SIGABRT</code>. For compatibility with the reference implementation, set <code>-XX:-HandleSIGABRT</code>. </li>\n<li><code>-XX:[+|-]PrintFlagsFinal</code> outputs the values of a subset of configuration parameters in a format compatible with that produced by HotSpot. This is an initial implementation, and over time, we expect more options to be added to the output.</li>\n</ul>\n<p>And for your convenience, the Application Programming Interface (API) documentation that applies to OpenJ9 can now be found in the user documentation for both JDK 8 and JDK 11. The documentation includes links to Oracle API documentation for information that is not specific to OpenJ9.</p>\n<p>On macOSĀ® systems: You should note that in this release, the version information for shared libraries on macOS has been updated from 0.0.0 to 1.0.0. If an application has linked against a shared library from a previous OpenJ9 release, it needs to be re-linked against the new release. Failure to re-link causes an error <code>Incompatible library version</code>, <code>requires version 0.0.0</code>.</p>\n<p>For all the details of changes and improvements in 0.21.0, read the <a href=\"https://www.eclipse.org/openj9/docs/version0.21/\" target=\"_blank\" rel=\"nofollow\">Version 0.21.0 \"What's New\" page</a> and see also the <a href=\"https://github.com/eclipse/openj9/blob/master/doc/release-notes/0.21/0.21.md\" target=\"_blank\" rel=\"nofollow\">OpenJ9 Release notes</a>.</p>"}}]}},"pageContext":{}}}