Patent application number | Description | Published |
20110067018 | COMPILER PROGRAM, COMPILATION METHOD, AND COMPUTER SYSTEM - A method, computer program product and system for improving performance of a program during runtime. The method includes reading source code; generating a dependence graph with a dependency for (1) data or (2) side effects; generating a postdominator tree based on the dependence graph; identifying a portion of the program able to be delayed using the postdominator tree; generating delay closure code; profiling a location where the location is where the delay closure code is forced; inlining the delay closure code into a frequent location in which the delay closure code has been forced with high frequency; partially evaluating the program; and generating fast code which eliminates an intermediate data structure within the program, where at least one of the steps is carried out using a computer device so that performance of the program during runtime is improved. | 03-17-2011 |
20110154354 | METHOD AND PROGRAM FOR RECORDING OBJECT ALLOCATION SITE - A method, system, and program for recording an object allocation site. In the structure of an object, a pointer to a class of an object is replaced by a pointer to an allocation site descriptor which is unique to each object allocation site, a common allocation site descriptor is used for objects created at the same allocation site, and the class of the object is accessed through the allocation site descriptor. | 06-23-2011 |
20120191947 | COMPUTER OPERATION CONTROL METHOD, PROGRAM AND SYSTEM - A computer implemented control method, article of manufacture, and computer implemented system for determining whether stack allocation is possible. The method includes: allocating an object created by a method frame to a stack. The allocation is performed in response to: calling a first and second instruction in the method frame; the first instruction causes an escape of the object, and the second instruction cancels the escape of the object; the object does not escape to a thread other than a thread to which the object has escaped, at the point in time when the escape is cancelled; the first instruction has been called before the second instruction is called; and the object does not escape in accordance with an instruction other than the first instruction in the method frame, regardless of whether the object escapes in accordance with the first instruction. | 07-26-2012 |
20120324206 | COMPUTER OPERATION CONTROL METHOD, PROGRAM, AND SYSTEM - A computer implemented control method, article of manufacture, and computer implemented system for determining whether stack allocation is possible. The method includes: allocating an object created by a method frame to a stack. The allocation is performed in response to: calling a first and second instruction in the method frame; the first instruction causes an escape of the object, and the second instruction cancels the escape of the object; the object does not escape to a thread other than a thread to which the object has escaped, at the point in time when the escape is cancelled; the first instruction has been called before the second instruction is called; and the object does not escape in accordance with an instruction other than the first instruction in the method frame, regardless of whether the object escapes in accordance with the first instruction. | 12-20-2012 |
20130305220 | METHOD AND PROGRAM FOR RECORDING OBJECT ALLOCATION SITE - A method, system, and program for recording an object allocation site. In the structure of an object, a pointer to a class of an object is replaced by a pointer to an allocation site descriptor which is unique to each object allocation site, a common allocation site descriptor is used for objects created at the same allocation site, and the class of the object is accessed through the allocation site descriptor. | 11-14-2013 |
Patent application number | Description | Published |
20090070740 | SYSTEM FOR STORING AND MANAGING OBJECTS - A system of the present invention includes a storage device for distinguishably storing old objects that are objects having existed for not less than a predetermined period since being generated and new objects that are objects having existed for less than the predetermined period since being generated. Then, a new object that has existed for less than the predetermined period since being generated is selected from the storage device, and an old object having the same content as the selected new object is searched for. If such an old object is not found, the selected new object is newly stored as an old object in the storage device. If the old object is found, a reference to the selected new object is integrated with a reference to the found old object. If the old object is stored, the reference to the selected new object is changed to a reference to the stored old object. | 03-12-2009 |
20090249292 | Processing strings based on whether the strings are short strings or long strings - The specification of a string within source code written in a programming language is received. The source code is processed for ultimate execution of a computer program encompassing the source code, by at least performing the following. It is determined whether the string specified is a short string or a long string. The string is processed in accordance with a first manner where the string is a short string. The string is processed in accordance with a second manner where the string is a long string. | 10-01-2009 |
20100106697 | SYSTEM FOR ACCESSING SHARED DATA USING MULTIPLE APPLICATION SERVERS - A system including multiple application servers for accessing shared data and a centralized control unit for centrally controlling a lock applied to the shared data by each of the application servers. Each application server includes a distributed control unit for controlling a lock applied to the shared data by the application server and a selection unit for selecting any one of distributed mode in which a lock is acquired from the distributed control unit or a centralized mode in which a lock is acquired from the centralized control unit. | 04-29-2010 |
20100153484 | OFFLOADING FILLING OF TEMPLATE PARAMETERS TO CLIENT FROM SERVER - One or more servers are communicatively connected to a client. An application program and a dummy template engine run on the servers. The dummy template engine substitutes an original template engine that can run on the servers. The original template engine is normally used by the application program to fill parameters of a template at the servers. The dummy template engine has the same interface as the original template has, such that the application program accesses the dummy template engine no differently than it accesses the original template engine. The dummy template engine is thus accessed by the application program in lieu of the original template engine. The dummy template engine causes the parameters of the template to be filled at the client instead of at the servers, such that template parameter filling is offloaded to the client. | 06-17-2010 |
20100235412 | METHOD TO REDUCE WASTED CHARACTER DATA AREAS OF JAVA STRINGS - A string handling method, program, and information processing apparatus capable of reducing the amount of data stored in a storage. An information processing apparatus handles strings. The information processing apparatus includes a storage storing a group of strings including a plurality of strings each of which consists of a plurality of pieces of character data, a reference section which refers to a particular string in the group of strings, a character data detecting section which detects character data that is not referenced as the particular string in the group of strings, and a character data deleting section which deletes the detected character data from the group of strings. | 09-16-2010 |
20110137971 | DATA COLLECTION METHOD AND SYSTEM - A method of collecting data into a server from multiple client computers is provided as a first aspect of the invention. The method includes the steps of: reconstructing a collection network in a tree structure having the server acting as a highest node and the multiple client computers acting as child nodes every time the data is collected; the server broadcasting a parent-child declaration to nodes placed at the lower level; and each of the nodes transferring data to a node placed at the higher level. | 06-09-2011 |
20130304811 | Offloading filling of template parameters to client from server - One or more servers are communicatively connected to a client. An application program and a dummy template engine run on the servers. The dummy template engine substitutes an original template engine that can run on the servers. The original template engine is normally used by the application program to fill parameters of a template at the servers. The dummy template engine has the same interface as the original template has, such that the application program accesses the dummy template engine no differently than it accesses the original template engine. The dummy template engine is thus accessed by the application program in lieu of the original template engine. The dummy template engine causes the parameters of the template to be filled at the client instead of at the servers, such that template parameter filling is offloaded to the client. | 11-14-2013 |
20140040326 | GARBAGE COLLECTION OF AN OBJECT - One or more embodiments are directed to creating a structure comprising a weak reference to an object, a strong reference to the object, a count of remote references to the object, and an identifier for the object, incrementing the count when a remote reference is created to the object and decrementing the count when a remote reference is removed, setting the strong reference in response to the count being greater than a first threshold in order to avoid a garbage collection of the object, clearing the strong reference in response to the count being less than a second threshold to enable a garbage collection of the object, and removing the structure and related resources based on a recognition of the object's collection through the weak reference. | 02-06-2014 |
20140040327 | GARBAGE COLLECTION OF AN OBJECT - One or more embodiments are directed to creating a structure comprising a weak reference to an object, a strong reference to the object, a count of remote references to the object, and an identifier for the object, incrementing the count when a remote reference is created to the object and decrementing the count when a remote reference is removed, setting the strong reference in response to the count being greater than a first threshold in order to avoid a garbage collection of the object, clearing the strong reference in response to the count being less than a second threshold to enable a garbage collection of the object, and removing the structure and related resources based on a recognition of the object's collection through the weak reference. | 02-06-2014 |
20140082127 | SYSTEM FOR ACCESSING SHARED DATA USING MULTIPLE APPLICATION SERVERS - A system including multiple application servers for accessing shared data and a centralized control unit for centrally controlling a lock applied to the shared data by each of the application servers. Each application server includes a distributed control unit for controlling a lock applied to the shared data by the application server and a selection unit for selecting any one of distributed mode in which a lock is acquired from the distributed control unit or a centralized mode in which a lock is acquired from the centralized control unit. | 03-20-2014 |
Patent application number | Description | Published |
20080276256 | Method and System for Speeding Up Mutual Exclusion - In a multiprocessor computer system, a lock operation is maintained with a thread using non-atomic instructions. Identifiers are assigned to each thread. Flags in conjunction with the thread identifiers are used to determine the continuity of the lock with a thread. However, in the event continuity of the lock with the thread ceases, a compare-and-swap operation is executed to reset the lock with the same thread or another thread. Similarly, in the event there has been a collision between two or more threads requesting the lock, a compare-and-swap operation is executed to assign the lock to one of the requesting threads. Accordingly, prolonged ownership of a lock operation by a thread is encouraged to mitigate use of atomic operations in granting of the lock to a non-owning thread. | 11-06-2008 |
20090187896 | COMPILER DEVICE, PROGRAM, AND RECORDING MEDIUM - Compiler device for optimizing program which manipulates a character string includes append instruction detection unit, store code generation unit, and append code generation unit. The append instruction detection unit detects an append instruction which appends a character string to a string variable for storing a character string, in the program. The store code generation unit generates, a substitute for each of a plurality of the append instructions detected by the append instruction detection unit, a store code for storing data of an appendant character string to be appended to the string variable by the append instruction into a buffer. The append instructions append the character strings to the same string variable. The append code generation unit generates append code for appending a plurality of the appendant character strings to the string variable, at a position executed before an instruction to refer to the string variable in the program. | 07-23-2009 |