JEP 383

GPTKB entity

Statements (456)
Predicate Object
gptkbp:instance_of gptkb:Java_2_Platform
gptkb:JEP
gptkbp:addresses API usability
thread stack management
gptkbp:aims_to improve observability
reduce pause times during garbage collection
simplify API usage
simplify type checks and casts
gptkbp:allows custom event types
gptkbp:api Introduces new classes and methods.
gptkbp:approves December 2019
JDK Release Committee
gptkbp:author gptkb:Brian_Goetz
gptkb:Alex_Buckley
gptkb:Mark_Reinhold
Gavin Bierman
JDK Release Team
Jeppe Cramon.
Jérôme Lacoste
gptkbp:benefits Improved performance.
None identified.
Achieved.
developers and operators
Enhanced performance.
Considered a success.
Performance improvements.
Improved performance on mac OS.
Improves performance of constant pool.
Outcomes evaluated.
gptkbp:budget Budget allocated.
gptkbp:cause Java EE and CORBA are no longer widely used.
gptkbp:challenges Complexity in implementation.
None significant.
Challenges documented.
gptkbp:collaborative_projects Collaborative effort.
Collaboration encouraged.
gptkbp:community_feedback Positive.
Positive feedback from the Java community.
gptkbp:community_involvement Active community participation.
Active community discussions.
gptkbp:community_support Strong community support.
gptkbp:compatibility Maintains backward compatibility with existing Java code.
Backward compatible with existing reflection.
Maintains backward compatibility.
gptkbp:concluded_on Deprecation is a step towards removal.
gptkbp:conformance Conforms to Java SE specifications.
Conforms to Java SE 12.
Conforms to the Java SE platform.
gptkbp:consequences Existing reflection code may need to be reviewed.
gptkbp:contributes_to gptkb:Java_ecosystem
observability tools
gptkbp:contribution Contributed by multiple developers.
Contributes to the evolution of Java.
gptkbp:created 2019-09-17
gptkbp:date_finalized 2019-09-17
gptkbp:dependency None.
Requires JDK 17 or later.
gptkbp:describes ZGC: Concurrent Thread-Stack Processing
JDK 14 Support for the Java SE 14 API
gptkbp:description This JEP proposes the removal of the Java EE and CORBA modules from the JDK.
Introduces a new rendering pipeline for mac OS.
Provides an API for safely accessing foreign memory outside of the Java heap.
Describes the release process for JDK 14.
Introduces dynamic constants in class files.
Reimplement the core reflection APIs in the Java platform.
gptkbp:design Simplicity and efficiency.
gptkbp:developed_by gptkb:Open_JDK_community
gptkbp:development Java development team.
gptkbp:discusses October 2019
JDK mailing lists
Open JDK mailing lists
Open JDK mailing lists.
https://openjdk.java.net/jeps/383
https://mail.openjdk.java.net/pipermail/jdk-dev/2020-January/003123.html
gptkbp:effective_date 2021-08-01
gptkbp:enables real-time analysis of application performance
gptkbp:end_date March 2020
March 2021.
gptkbp:enhances gptkb:Java_programming_language
monitoring capabilities
type inference
thread-stack processing
gptkbp:error_handling Improved error messages.
Provides mechanisms for error handling in memory operations.
gptkbp:evaluates Performance benchmarks available.
gptkbp:example Code examples provided in the documentation.
Interfacing with native libraries.
Used in lambda expressions.
gptkbp:facilitates performance tuning
gptkbp:feature gptkb:Memory_Layout
gptkb:Memory_Segment
Memory Access
Resource Scope
Var Handle for foreign memory.
gptkbp:feedback Community-driven feedback process.
gptkbp:feedback_mechanism Open JDK mailing lists.
Open feedback channels.
gptkbp:focuses_on API enhancements
gptkbp:funding Funded by Oracle.
gptkbp:future_plans Monitor usage.
Further enhancements planned for future JDK releases.
gptkbp:future_prospects Further enhancements to the API.
Monitor performance.
Further enhancements to dynamic constants.
Potential enhancements for additional memory management features.
Complete removal in future JDK.
gptkbp:goal Streamline the JDK release process.
Enable better performance tuning.
Encourage adoption of foreign memory access.
Enhance safety in memory operations.
Facilitate migration from JNI.
Improve performance of native interop.
Provide a foundation for future enhancements.
Provide a more ergonomic API.
Reduce complexity of native memory access.
Support for multi-threaded access.
Support for structured memory access.
gptkbp:has_community Open JDK mailing list.
gptkbp:has_documentation Comprehensive documentation provided.
Updated in JDK 17.
https://openjdk.java.net/jeps/383
gptkbp:has_goal Reduce reflection overhead.
gptkbp:has_version Version history maintained.
gptkbp:historical_achievement Final approval.
Milestones tracked.
https://www.w3.org/2000/01/rdf-schema#label JEP 383
gptkbp:impact Enhances developer experience.
Minimal.
Impact assessed.
Enables better performance for applications that require native memory access.
Applications using Java EE and CORBA will need to migrate.
Positive on Java performance.
Improves performance for applications that require native memory access.
Graphics rendering in Java applications.
Improved predictability of JDK releases.
Changes to the Java Language Specification.
Identified project risks.
JMX functionality will be removed
Removes legacy modules from the JDK.
Core reflection APIs will be more efficient.
gptkbp:impact_on_interoperability Enhances interoperability with native libraries.
gptkbp:implementation_cost gptkb:medium
gptkbp:improves application performance
code readability
developer productivity
diagnostic capabilities
gptkbp:includes performance benchmarks
new language features
gptkbp:influenced_by gptkb:JEP_391
gptkb:JEP_392
gptkb:JEP_393
gptkb:JEP_260
gptkbp:innovation Innovative approach.
Innovative features introduced.
gptkbp:introduced_in gptkb:Java_14
gptkb:JDK_14
gptkbp:investment gptkb:Low
gptkbp:involved_technology gptkb:API
gptkb:JNI_(Java_Native_Interface)
Java Virtual Machine.
Memory-mapped files.
Java NIO (New Input/ Output)
Direct Byte Buffers.
Unsafe API.
gptkbp:is_a_technical_specification_for Java SE 14 API
gptkbp:is_adopted_by gptkb:Java_15
enterprise applications
cloud-native applications
open-source projects
software projects
large-scale systems
High.
Widely adopted.
Used in various frameworks.
Adopted by several major frameworks.
Increasing adoption in enterprise applications.
gptkbp:is_analyzed_in software engineers
technical articles
gptkbp:is_associated_with gptkb:Java_Development_Kit_(JDK)
gptkbp:is_beneficial_for system administrators
gptkbp:is_cited_in gptkb:Documentation
academic papers
Java programming literature
gptkbp:is_compatible_with Java applications
JFR tools
gptkbp:is_considered future Java versions
gptkbp:is_considered_as a key feature
a significant update
a significant improvement
a language enhancement
a major improvement
gptkbp:is_described_as technical papers
Java documentation
gptkbp:is_discussed_in gptkb:Java_conferences
Java user groups
developer communities
Java community forums
Java forums
gptkbp:is_documented_in gptkb:Open_JDK
Java documentation
Open JDK documentation
JEP repository
JEP 383 documentation
gptkbp:is_evaluated_by gptkb:developers
Java developers
software engineers
programming communities
software architects
gptkbp:is_expected_to improve performance
gptkbp:is_explored_in research papers
gptkbp:is_focused_on memory efficiency
gptkbp:is_implemented_in gptkb:Java_programming_language
gptkb:Java_SE_12
gptkb:JDK_14
gptkb:Java_Development_Kit_(JDK)
gptkb:Java_libraries
gptkb:Open_JDK
Java runtime environment
None significant.
Completed.
Implemented in the JDK.
JDK Release Team
Open JDK.
Rewritten in Java.
Requires JVM changes.
Detailed implementation guide.
Implemented in the Java standard library.
JFR API
gptkbp:is_influenced_by developer feedback
previous instanceof patterns
previous JEPs
gptkbp:is_integrated_with gptkb:cloud_services
monitoring systems
Java monitoring tools
gptkbp:is_motivated_by To improve performance and interoperability with native code.
Reduce the size of the JDK
To reduce the size of the JDK.
Improve performance and maintainability of reflection.
gptkbp:is_part_of gptkb:Java_SE_Platform
gptkb:Java_2_Platform
gptkb:Java_SE_platform
gptkb:Java_SE_14
Java language evolution
Java language features
Java performance enhancements
Java 14 features
gptkbp:is_promoted_by gptkb:Oracle
gptkbp:is_promoted_through gptkb:Java_conferences
gptkbp:is_recommended_for performance monitoring
gptkbp:is_related_to gptkb:JEP_411
gptkb:JEP_334
gptkb:JEP_370
gptkb:JEP_384
gptkb:JEP_385
gptkb:JEP_386
gptkb:JEP_387
gptkb:JEP_394
gptkb:JEP_305
gptkbp:is_relevant_to Java developers
gptkbp:is_reviewed_by gptkb:Java_Community_Process
gptkb:Java_community
industry professionals
Java experts
software architects
Approved.
gptkbp:is_supported_by gptkb:Java_frameworks
gptkb:Java_SE_14
gptkb:multiple_platforms
gptkb:Java_Development_Kit_(JDK)
gptkb:Java_community
gptkb:JVM
Java IDEs
Java community forums
gptkbp:is_targeted_at Java developers
gptkbp:is_tested_for real-world scenarios
Java applications
development environments
production environments
Java development environments
Extensively tested.
Java test suites
Extensive testing needed.
gptkbp:is_used_in gptkb:Java_programming_language
production environments
gptkbp:is_utilized_by performance engineers
gptkbp:is_utilized_for event-driven architectures
gptkbp:is_visible_from High visibility.
Visibility increased.
gptkbp:issue_link https://bugs.openjdk.java.net/browse/ JDK-8221210
gptkbp:issues JDK-8251234
gptkbp:key_feature Resource management
Access to native memory without JNI.
Memory access methods
Memory access without the need for JNI.
Memory segments
Safety and performance guarantees
Support for memory allocation and deallocation.
Direct access to memory regions.
Integration with the Java garbage collector.
Support for memory access in a safe manner.
Support for memory access with different layouts.
Support for memory access with safety checks.
Dynamic constant resolution.
gptkbp:latest_version 1.0
gptkbp:legacy Legacy established.
Long-term impact on Java.
gptkbp:library Libraries may benefit from performance gains.
gptkbp:notable_contributor gptkb:John_Doe
gptkbp:notable_production Simplifies development of native integrations.
gptkbp:notable_release March 2020
2019-03-01
gptkbp:outcome Improved performance and usability.
gptkbp:performance Significant improvements.
Reduces class loading time.
Reduces overhead in memory access.
Significantly improves memory access speed.
gptkbp:plot_summary Provides a mechanism for Java programs to safely and efficiently access foreign memory.
This JEP proposes to deprecate the Java EE and CORBA modules for removal in a future release.
This JEP proposes to reimplement the core reflection APIs.
gptkbp:previous_jep gptkb:JEP_12
gptkbp:project gptkb:Project_Panama
gptkb:Project_Loom
gptkb:Project_Valhalla
Project Amber
Future developments planned.
Recognized in the community.
Completed in 2021.
Project Loom.
Project Panama.
Continued enhancements.
Improve core reflection.
Managed by Open JDK.
Enhance Java language features.
Deliverables outlined.
Timeline documented.
Updated reflection APIs.
gptkbp:project_learnings Learnings captured.
gptkbp:proposed_by gptkb:Pattern_Matching_for_instanceof
gptkb:Brian_Goetz
gptkb:Oracle
gptkb:JDK_12
gptkb:Mark_Reinhold
Foreign-Memory Access API Working Group
Gavin Bierman
Java engineers
improvements to garbage collection
Java SE 14 features
Remove the Java Management Extensions (JMX) Modules
gptkbp:provides backward compatibility
streaming of JFR events
new syntax for instanceof checks
gptkbp:provides_access_to JFR data streams
gptkbp:published_by JDK Enhancement-Proposal repository
Java enhancement proposal archives
Java technical blogs
gptkbp:purpose Provide a mechanism to safely access foreign memory outside of the Java heap.
gptkbp:reduces boilerplate code
gptkbp:related_concept Java SE standards.
Java SE.
gptkbp:related_jeps gptkb:JEP_411
gptkb:JEP_384
gptkb:JEP_392
gptkb:JEP_394
gptkb:JEP_12
gptkb:JEP_291
gptkb:JEP_320
gptkbp:related_to gptkb:JEP_411
gptkb:JEP_384
gptkb:JEP_392
gptkb:JEP_394
gptkb:Java_SE_14
gptkb:Java_FX
gptkb:JEP_412
gptkbp:release_date gptkb:2020
March 2020
September 2021
gptkbp:release_notes Included in JDK 17 release notes.
Included in JDK 12 release notes.
gptkbp:released gptkb:JDK_17
gptkb:Java_SE_11
gptkb:Java_SE_14
gptkbp:requires JDK 14 or later
gptkbp:reviews gptkb:Jérôme_Dochez
gptkb:Alan_Bateman
gptkb:Brian_Goetz
gptkb:Alex_Buckley
gptkb:Mark_Reinhold
2021-06-01
Peer-reviewed.
JDK Release Team
Various members of the Open JDK community.
Jérôme Lacoste
https://mail.openjdk.java.net/pipermail/jdk-dev/2019-October/002123.html
gptkbp:scope Defined project scope.
Core reflection APIs.
gptkbp:security None.
No new security risks.
Includes security checks for memory access.
Improves security in memory operations.
gptkbp:sister_channel Community support available.
gptkbp:specification Java SE 12 Specification.
Defines the API for foreign memory access.
gptkbp:specifies gptkb:Java_Flight_Recorder
gptkbp:stakeholders Stakeholders identified.
Engaged with stakeholders.
Java community.
gptkbp:status gptkb:Flamethrower
gptkb:Final
Standard Feature
gptkbp:strategic_importance High for Java ecosystem.
gptkbp:success_rate Performance benchmarks.
Measured success post-implementation.
gptkbp:successor gptkb:JEP_394
gptkbp:support Supported by Oracle.
gptkbp:supports event filtering
gptkbp:sustainability_efforts Sustainable.
Sustainability considered.
gptkbp:target_audience Java developers
Java developers.
gptkbp:target_jdk gptkb:JDK_17
gptkb:14
gptkb:JDK_11
gptkb:JDK_12
gptkb:JDK_14
gptkb:JDK_16
gptkbp:title gptkb:Foreign-Memory_Access_API_(incubator)
gptkb:JFR_Event_Streaming
gptkb:New_mac_OS_Rendering_Pipeline
Dynamic Class-File Constants
Foreign-Memory Access API
Remove the Java EE and CORBA Modules
Reimplement Core Reflection
JDK 14 Release Process
Deprecate the Java EE and CORBA Modules for Removal
gptkbp:training_programs Training materials provided.
gptkbp:tutorials Available tutorials for developers.
gptkbp:type Technical
gptkbp:updates 2020-03-17
Planned for future JDK releases.
Planned for JDK 13.
gptkbp:usage Used in many Java applications.
Used in high-performance computing applications.
Used in applications requiring direct memory manipulation.
gptkbp:use_case Dynamic language features.
gptkbp:user_base Java developers.
gptkbp:user_feedback Generally positive.
Collected user feedback.
gptkbp:user_manual User guide available.
gptkbp:vision Enhance Java reflection.
gptkbp:wildlife Broadens the Java ecosystem capabilities.
gptkbp:bfsParent gptkb:Java_Compiler_(javac)
gptkb:JEP_33
gptkb:JDK_10
gptkb:JDK_14
gptkb:Java_10
gptkbp:bfsLayer 5