Java Graphics Library Cache Flush Elimination
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing system performance is slow for graphics operations due to the need for data cache flush and eviction when passing parameters between processors for native library routine calls, leading to inefficiencies in Java bytecodes execution.
Innovation Solution
A Java graphics library is implemented on the Java Stack Machine processor, which creates software objects to abstract and access display window memory, allowing graphics routines to execute directly without relying on Java Native Interface calls, thus avoiding cache flush and eviction.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If native library routines are called through JNI to perform graphics functions, then graphics operations can be executed, but system performance deteriorates due to cache flush and eviction operations
Solution Approach 1:
The patent extracts the graphics library routines from the native processor and implements them directly on the Java Stack Machine processor. This removes the need for JNI calls and parameter passing between processors, thereby eliminating the cache flush and eviction operations that cause performance degradation.
Solution Approach 2:
The patent introduces a Java graphics library as an intermediary layer that runs on the Java Stack Machine processor. This intermediary enables graphics operations to be performed directly without requiring communication with the native processor, thus avoiding the harmful cache operations associated with JNI calls.
2Ease of operation
If parameters are passed between processors through main memory, then native library routines can access necessary data, but data cache consistency deteriorates requiring flush operations
Solution Approach 1:
The patent merges the graphics library functionality into the Java Stack Machine processor itself, combining what were previously separate operations (parameter passing and graphics execution) into a single integrated system. This eliminates the need for inter-processor communication and the associated cache consistency problems.
Solution Approach 2:
The Java Stack Machine processor becomes self-sufficient by executing graphics library routines directly. It no longer needs to request services from the native processor or pass parameters through main memory, thereby maintaining data cache consistency without requiring flush operations.
3Quantity of substance
If data is evicted from processor cache to make room for parameters, then native library routines can obtain necessary data, but system performance deteriorates due to reload operations
Solution Approach 1:
The patent performs preliminary action by implementing the graphics library routines directly on the Java Stack Machine processor, so that all necessary data remains in the processor's cache throughout the graphics operations. This eliminates the need for cache eviction and subsequent reload operations that would otherwise be required when calling native library routines.
Data Source
AI summary
A method and system of accessing display window memory. At least some of the illustrative embodiments are methods comprising abstracting display window memory by way of a first software object, accessing the display window memory by routines of a graphics library executed on a first processor (the accessing by way of the first software object), and displaying a window on a display screen, contents of the window selected at least in part by the routines of the graphics library.

