Patents by Inventor Marius Pirvu
Marius Pirvu has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11188354Abstract: Embodiments of the present invention comprise a class sharing orchestrator (CSO) operating as a subsystem of a container orchestrator. The CSO manages sharing of class data among containerized applications to improve startup performance, CPU consumption and memory footprint. The CSO stores application class data in a shared class cache (SCC). The CSO provides a compatible SCC to every deployed application running within the CSO's purview. The CSO collects SCC data from running applications, and processes the data offline to continuously improve the quality of SCCs provided to each deployment, while causing minimum impact to running applications. The CSO combines updates from running applications of a given type to generate an improved quality SCC for use by newly launched applications of the same type. The CSO comprises an SCC update mechanism that optimizes the size, and network traffic, associated with SCC data exchange, and guarantees SCC quality improves over time.Type: GrantFiled: September 23, 2020Date of Patent: November 30, 2021Assignee: International Business Machines CorporationInventors: Anyang Yu, Dhruv Chopra, Alen Badel, Vijay Sundaresan, Marius Pirvu, Michael Dawson, Daniel Heidinga
-
Patent number: 10725914Abstract: An infrequently used method is selected for eviction from a code cache repository by accessing a memory management data structure from an operating system, using the data structure to identify a first set of pages that are infrequently referenced relative to a second set of pages, determining whether or not a page of the first set of pages is part of a code cache repository and includes at least one method, in response to the page of the first set of pages being part of the code cache repository and including at least one method, flagging the at least one method as a candidate for eviction from the code cache repository, determining whether or not a code cache storage space limit has been reached for the code cache repository, and, in response to the storage space limit being reached, evicting the at least one flagged method from the code cache repository.Type: GrantFiled: April 30, 2019Date of Patent: July 28, 2020Assignee: International Business Machines CorporationInventor: Marius Pirvu
-
Patent number: 10445075Abstract: Using stored information about the compilation environment during compilation of a code segment to improve performance of just-in-time compilers. A set of characteristic(s) of a compilation environment is measured during compilation of a code segment. Information that may be relevant to how the compilation is performed is derived from at least one of the measured characteristics and stored in a persistent storage device. Upon a subsequent request to compile that code segment, the information is retrieved and used to change compilation behavior. The set of characteristic(s) relate to at least either compilation backlog or peak memory usage. The changed compilation behavior involves at least adjusting the scheduling of the subsequent compilation request or adjusting the compiler optimization level.Type: GrantFiled: June 8, 2017Date of Patent: October 15, 2019Assignee: International Business Machines CorporationInventor: Marius Pirvu
-
Publication number: 20190258571Abstract: An infrequently used method is selected for eviction from a code cache repository by accessing a memory management data structure from an operating system, using the data structure to identify a first set of pages that are infrequently referenced relative to a second set of pages, determining whether or not a page of the first set of pages is part of a code cache repository and includes at least one method, in response to the page of the first set of pages being part of the code cache repository and including at least one method, flagging the at least one method as a candidate for eviction from the code cache repository, determining whether or not a code cache storage space limit has been reached for the code cache repository, and, in response to the storage space limit being reached, evicting the at least one flagged method from the code cache repository.Type: ApplicationFiled: April 30, 2019Publication date: August 22, 2019Inventor: Marius Pirvu
-
Patent number: 10318421Abstract: An infrequently used method is selected for eviction from a code cache repository by accessing a memory management data structure from an operating system, using the data structure to identify a first set of pages that are infrequently referenced relative to a second set of pages, determining whether or not a page of the first set of pages is part of a code cache repository and includes at least one method, in response to the page of the first set of pages being part of the code cache repository and including at least one method, flagging the at least one method as a candidate for eviction from the code cache repository, determining whether or not a code cache storage space limit has been reached for the code cache repository, and, in response to the storage space limit being reached, evicting the at least one flagged method from the code cache repository.Type: GrantFiled: April 12, 2017Date of Patent: June 11, 2019Assignee: International Business Machines CorporationInventor: Marius Pirvu
-
Publication number: 20180300243Abstract: An infrequently used method is selected for eviction from a code cache repository by accessing a memory management data structure from an operating system, using the data structure to identify a first set of pages that are infrequently referenced relative to a second set of pages, determining whether or not a page of the first set of pages is part of a code cache repository and includes at least one method, in response to the page of the first set of pages being part of the code cache repository and including at least one method, flagging the at least one method as a candidate for eviction from the code cache repository, determining whether or not a code cache storage space limit has been reached for the code cache repository, and, in response to the storage space limit being reached, evicting the at least one flagged method from the code cache repository.Type: ApplicationFiled: April 12, 2017Publication date: October 18, 2018Inventor: Marius Pirvu
-
Publication number: 20170269915Abstract: Using stored information about the compilation environment during compilation of a code segment to improve performance of just-in-time compilers. A set of characteristic(s) of a compilation environment is measured during compilation of a code segment. Information that may be relevant to how the compilation is performed is derived from at least one of the measured characteristics and stored in a persistent storage device. Upon a subsequent request to compile that code segment, the information is retrieved and used to change compilation behavior. The set of characteristic(s) relate to at least either compilation backlog or peak memory usage. The changed compilation behavior involves at least adjusting the scheduling of the subsequent compilation request or adjusting the compiler optimization level.Type: ApplicationFiled: June 8, 2017Publication date: September 21, 2017Inventor: Marius Pirvu
-
Patent number: 9710246Abstract: Using stored information about the compilation environment during compilation of a code segment to improve performance of just-in-time compilers. A set of characteristic(s) of a compilation environment is measured during compilation of a code segment. Information that may be relevant to how the compilation is performed is derived from at least one of the measured characteristics and stored in a persistent storage device. Upon a subsequent request to compile that code segment, the information is retrieved and used to change compilation behavior. The set of characteristic(s) relate to at least either compilation backlog or peak memory usage. The changed compilation behavior involves at least adjusting the scheduling of the subsequent compilation request or adjusting the compiler optimization level.Type: GrantFiled: December 8, 2015Date of Patent: July 18, 2017Assignee: International Business Machines CorporationInventor: Marius Pirvu
-
Publication number: 20160085532Abstract: Using stored information about the compilation environment during compilation of a code segment to improve performance of just-in-time compilers. A set of characteristic(s) of a compilation environment is measured during compilation of a code segment. Information that may be relevant to how the compilation is performed is derived from at least one of the measured characteristics and stored in a persistent storage device. Upon a subsequent request to compile that code segment, the information is retrieved and used to change compilation behavior. The set of characteristic(s) relate to at least either compilation backlog or peak memory usage. The changed compilation behavior involves at least adjusting the scheduling of the subsequent compilation request or adjusting the compiler optimization level.Type: ApplicationFiled: December 8, 2015Publication date: March 24, 2016Inventor: Marius Pirvu
-
Patent number: 9286089Abstract: Using stored information about the compilation environment during compilation of a code segment to improve performance of just-in-time compilers. A set of characteristic(s) of a compilation environment is measured during compilation of a code segment. Information that may be relevant to how the compilation is performed is derived from at least one of the measured characteristics and stored in a persistent storage device. Upon a subsequent request to compile that code segment, the information is retrieved and used to change compilation behavior. The set of characteristic(s) relate to at least either compilation backlog or peak memory usage. The changed compilation behavior involves at least adjusting the scheduling of the subsequent compilation request or adjusting the compiler optimization level.Type: GrantFiled: January 24, 2014Date of Patent: March 15, 2016Assignee: International Business Machines CorporationInventor: Marius Pirvu
-
Patent number: 9268543Abstract: A process, a computer program product, and a computer system for efficient code cache management implemented by a just-in-time compiler are provided. Embodiments of the present invention provide a practical approach to compile effectively for methods that are frequently executed over a short time period but are subsequently not executed frequently. The disclosed approach reduces the detrimental effects of compilation of such infrequently executed methods on throughput and garbage collection pause times.Type: GrantFiled: September 23, 2014Date of Patent: February 23, 2016Assignee: International Business Machines CorporationInventors: Patrick R. Doyle, Marcel Mitran, Marius Pirvu, Kevin A. Stoodley, Vijay Sundaresan
-
Publication number: 20150212838Abstract: Using stored information about the compilation environment during compilation of a code segment to improve performance of just-in-time compilers. A set of characteristic(s) of a compilation environment is measured during compilation of a code segment. Information that may be relevant to how the compilation is performed is derived from at least one of the measured characteristics and stored in a persistent storage device. Upon a subsequent request to compile that code segment, the information is retrieved and used to change compilation behavior. The set of characteristic(s) relate to at least either compilation backlog or peak memory usage. The changed compilation behavior involves at least adjusting the scheduling of the subsequent compilation request or adjusting the compiler optimization level.Type: ApplicationFiled: January 24, 2014Publication date: July 30, 2015Applicant: International Business Machines CorporationInventor: Marius Pirvu
-
Patent number: 8756603Abstract: A computer implemented method for categorizing a virtual machine stage. A data processing system starts a virtual machine. It sets factor-stage ranges, wherein for each combination factor and stage, a corresponding range is present, and wherein each range is as broad as a reset range. It sets a frequency for sampling virtual machine metrics and samples virtual machine metrics to form a plurality of virtual machine metrics for each factor. It applies a value to each range satisfied by each virtual machine metric, to form a plurality of stage-qualifying values corresponding to a range, and sums all stage-qualifying values for each stage, to form a stage likelihood. The data processing system further selects a stage corresponding a highest stage likelihood. The data processing system determines if the current range is different from a former range. The system expands each range corresponding to the current stage.Type: GrantFiled: July 2, 2012Date of Patent: June 17, 2014Assignee: International Business Machines CorporationInventor: Marius Pirvu
-
Patent number: 8533712Abstract: A computer system and computer program product for categorizing a virtual machine stage. A data processing system starts a virtual machine. It sets factor-stage ranges, wherein for each combination factor and stage, a corresponding range is present, and wherein each range is as broad as a reset range. It sets a frequency for sampling virtual machine metrics and samples virtual machine metrics to form a plurality of virtual machine metrics for each factor. It applies a value to each range satisfied by each virtual machine metric, to form a plurality of stage-qualifying values corresponding to a range, and sums all stage-qualifying values for each stage, to form a stage likelihood. The data processing system further selects a stage corresponding a highest stage likelihood. The data processing system determines if the current range is different from a former range. The system expands each range corresponding to the current stage.Type: GrantFiled: October 1, 2010Date of Patent: September 10, 2013Assignee: International Business Machines CorporationInventor: Marius Pirvu
-
Patent number: 8392898Abstract: Managing just-in-time compilation is provided. The process designates a set of compilation threads for exclusively performing compilation functions associated with an application. A set of computation threads is designated for executing the application. Processor cycles are dynamically allocated during runtime between the set of compilation threads and the set of computation threads to maintain a ratio of processor cycles consumed by the set of compilation threads to processor cycles consumed by the set of computation threads.Type: GrantFiled: February 6, 2012Date of Patent: March 5, 2013Assignee: International Business Machines CorporationInventor: Marius Pirvu
-
Publication number: 20130014105Abstract: A computer implemented method for categorizing a virtual machine stage. A data processing system starts a virtual machine. It sets factor-stage ranges, wherein for each combination factor and stage, a corresponding range is present, and wherein each range is as broad as a reset range. It sets a frequency for sampling virtual machine metrics and samples virtual machine metrics to form a plurality of virtual machine metrics for each factor. It applies a value to each range satisfied by each virtual machine metric, to form a plurality of stage-qualifying values corresponding to a range, and sums all stage-qualifying values for each stage, to form a stage likelihood. The data processing system further selects a stage corresponding a highest stage likelihood. The data processing system determines if the current range is different from a former range. The system expands each range corresponding to the current stage.Type: ApplicationFiled: July 2, 2012Publication date: January 10, 2013Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Marius Pirvu
-
Patent number: 8286152Abstract: Systems, methods, and computer products for just-in-time compilation for virtual machine environments for fast applications start-up and maximal run-time performance. Exemplary embodiments include a just in time compilation method for a virtual machine environment coupled to a memory, including identifying a program structure for compilation, creating a low optimization compiled version of the program structure that is relocatable in the memory, storing into a persistent cache the low optimization compiled version of the program structure that is relocatable and relocating the low optimization compiled version of the program structure into a virtual machine address space in the memory, wherein relocating the low optimization compiled version of the program structure includes transforming the low optimization compiled version to a compiled version with fixed addresses in the memory that can be executed.Type: GrantFiled: August 22, 2007Date of Patent: October 9, 2012Assignee: International Business Machines CorporationInventors: Nikola Grcevski, Derek B. Inglis, Marius Pirvu, Mark G. Stoodley
-
Publication number: 20120144377Abstract: A computer implemented method, apparatus, and computer program product for managing just-in-time compilation. The process designates a set of compilation threads for exclusively performing compilation functions associated with an application. A set of computation threads is designated for executing the application. Processor cycles are dynamically allocated during runtime between the set of compilation threads and the set of computation threads to maintain a ratio of processor cycles consumed by the set of compilation threads to processor cycles consumed by the set of computation threads.Type: ApplicationFiled: February 6, 2012Publication date: June 7, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Marius Pirvu
-
Publication number: 20120084776Abstract: A computer implemented method, system and computer program product for categorizing a virtual machine stage. A data processing system starts a virtual machine. It sets factor-stage ranges, wherein for each combination factor and stage, a corresponding range is present, and wherein each range is as broad as a reset range. It sets a frequency for sampling virtual machine metrics and samples virtual machine metrics to form a plurality of virtual machine metrics for each factor. It applies a value to each range satisfied by each virtual machine metric, to form a plurality of stage-qualifying values corresponding to a range, and sums all stage-qualifying values for each stage, to form a stage likelihood. The data processing system further selects a stage corresponding a highest stage likelihood. The data processing system determines if the current range is different from a former range. The system expands each range corresponding to the current stage.Type: ApplicationFiled: October 1, 2010Publication date: April 5, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Marius Pirvu
-
Patent number: 8146065Abstract: A computer implemented method, apparatus, and computer program product for managing just-in-time compilation. The process designates a set of compilation threads for exclusively performing compilation functions associated with an application. A set of computation threads is designated for executing the application. Processor cycles are dynamically allocated during runtime between the set of compilation threads and the set of computation threads to maintain a ratio of processor cycles consumed by the set of compilation threads to processor cycles consumed by the set of computation threads.Type: GrantFiled: August 13, 2007Date of Patent: March 27, 2012Assignee: International Business Machines CorporationInventor: Marius Pirvu