Memory management parameters derived from system modeling
First Claim
1. A method performed by a computer processor, said method comprising:
- receiving a first executable code;
monitoring said first executable code in a first execution environment, said first executable code having a plurality of processes;
receiving a set of process classifications, each of said process classifications having a set of garbage collection settings;
classifying each of said plurality of processes and assigning a process classification, each of said plurality of processes having a process classification;
creating a tagged version of said first executable code comprising tags for each of said processes identifying said process classification; and
executing said tagged version of said first executable code such that each process is executed using a set of garbage collection settings associated with said process classification.
2 Assignments
0 Petitions
Accused Products
Abstract
Optimized memory management settings may be derived from a mathematical model of an execution environment. The settings may be optimized for each application or workload, and the settings may be implemented per application, per process, or with other granularity. The settings may be determined after an initial run of a workload, which may observe and characterize the execution. The workload may be executed a second time using the optimized settings. The settings may be stored as tags for the executable code, which may be in the form of a metadata file or as tags embedded in the source code, intermediate code, or executable code. The settings may change the performance of memory management operations in both interpreted and compiled environments. The memory management operations may include memory allocation, garbage collection, and other related functions.
-
Citations
19 Claims
-
1. A method performed by a computer processor, said method comprising:
-
receiving a first executable code; monitoring said first executable code in a first execution environment, said first executable code having a plurality of processes; receiving a set of process classifications, each of said process classifications having a set of garbage collection settings; classifying each of said plurality of processes and assigning a process classification, each of said plurality of processes having a process classification; creating a tagged version of said first executable code comprising tags for each of said processes identifying said process classification; and executing said tagged version of said first executable code such that each process is executed using a set of garbage collection settings associated with said process classification. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system comprising:
-
a processor; an optimization system executing on said processor, said optimization system that; receives observations from executing a first executable code; determines a set of optimized memory management settings; generates metadata associating said optimized memory management settings for each of a plurality of processes executed with said first executable code; tags each process within said first executable code with a separate set of said optimized memory management settings; and causes said first executable code to be executed with said optimized memory management settings. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification