Patent application number | Description | Published |
20090248986 | Apparatus for and Method of Implementing Multiple Content Based Data Caches - A novel and useful mechanism enabling the partitioning of a normally shared L1 data cache into several different independent caches, wherein each cache is dedicated to a specific data type. To further optimize performance each individual L1 data cache is placed in relative close physical proximity to its associated register files and functional unit. By implementing separate independent L1 data caches, the content based data cache mechanism of the present invention increases the total size of the L1 data cache without increasing the time necessary to access data in the cache. Data compression and bus compaction techniques that are specific to a certain format can be applied each individual cache with greater efficiency since the data in each cache is of a uniform type. | 10-01-2009 |
20090249044 | Apparatus for and Method for Life-Time Test Coverage for Executable Code - a novel and useful apparatus for and method of associating a dedicated coverage bit to each instruction in a software system. Coverage bits are set every time the software application runs, enabling a more comprehensive and on-going code coverage analysis. The code coverage bit mechanism enables code coverage analysis for all installations of a software application, not just software in development mode or at a specific installation. Code coverage bits are implemented in either the instruction set architecture (ISA) of the central processing unit, the executable file of a software application, a companion file to the executable file or a code coverage table residing in memory of the computer system. | 10-01-2009 |
20100153926 | OPERATING SYSTEM AIDED CODE COVERAGE - A method, system, and computer program product for operating system (OS) aided code coverage are provided. The method includes reading context information associated with a software process in response to a context switching event in an OS, the OS initiating the reading of the context information and controlling scheduling of the software process. The method further includes determining coverage information for code implementing the software process as a function of the context information in response to the OS reading the context information, and storing the coverage information as coverage data. | 06-17-2010 |
20110252408 | PERFORMANCE OPTIMIZATION BASED ON DATA ACCESSES DURING CRITICAL SECTIONS - Detecting optimization opportunities is enabled by utilizing a trace of a target concurrent computer program and determining a relation between data objects accessed during the tracked execution. The relation may be stored in a Temporal Relation Graph (TRG), in an extended-TRG or another data structure. The relation may be affected by temporally-adjacent accesses to data objects. The relation may further be affected by accesses to data objects performed during critical sections of the target program. | 10-13-2011 |
20110283152 | DETECTING AND OPTIMIZING FALSE SHARING - Systems and methods for cache optimization are provided. The method comprises tracing objects instantiated during execution of a program code under test according to type of access by one or more threads running in parallel, wherein said tracing provides information about order in which different instances of one or more objects are accessed by said one or more threads and whether the type of access is a read operation or a write operation; and utilizing tracing information to build a temporal relationship graph (TRG) for the accessed objects, wherein the objects are represented by nodes in the TRG and at least two types of edges for connecting the nodes are defined. | 11-17-2011 |
20120233596 | MEASURING COUPLING BETWEEN COVERAGE TASKS AND USE THEREOF - Test coverage is enhanced by measuring various types of coupling between coverage tasks. The coupling measurements may be implicit coupling measurements, explicit coupling measurements, coding coupling measurements, performance coupling measurements, resource coupling measurements or the like. Coupling scores are calculated for coverage tasks and based thereon ranking of the coverage tasks or groups of coverage tasks may be determined The ranking may be utilized in selecting for which uncovered coverage task a test should be designed. The ranking may be utilized in computing a coverage measurement of a test suite. The ranking may be utilized to rank tests, based on the coverage tasks each test covers. Ranking of tests may be utilized for various purposes such as performing test selection. | 09-13-2012 |
20120233614 | MEASURING COUPLING BETWEEN COVERAGE TASKS AND USE THEREOF - Test coverage is enhanced by measuring various types of coupling between coverage tasks. The coupling measurements may be implicit coupling measurements, explicit coupling measurements, coding coupling measurements, performance coupling measurements, resource coupling measurements or the like. Based on the coupling measurements, different coverage tasks may be grouped together. For example, closely coupled coverage tasks may be grouped together. The groups may also be determined based on an initial distribution of groups, by combining groups having closely coupled member coverage tasks. The groups may be ordered and prioritized, such as based on the size of the groups and the number of uncovered tasks in each group. The groups may also be ordered, such as based on coupling score which aggregate the coupling measurements of the member coverage tasks. | 09-13-2012 |
20140297594 | Restarting a Batch Process From an Execution Point - Batch processing machines, systems and methods are provided. The method comprises copying target data from a target location to a first data storage medium, wherein the target data stored in the first data storage medium is utilized by a batch process; executing the batch process; checkpointing state information for the batch process at one or more time intervals while the batch process is executing; determining whether a data record in the target data stored in the target location was updated while the batch process was executing; and reinstating the batch process from a point in time prior to an earliest point in the batch process when a representation of an updated data record in the target data in the target location was accessed by the batch process. | 10-02-2014 |