Patents by Inventor Tamiya Onodera
Tamiya Onodera 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: 9021496Abstract: 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.Type: GrantFiled: July 12, 2013Date of Patent: April 28, 2015Assignee: International Business Machines CorporationInventors: Kiyokuni Kawachiya, Rei Odaira, Tamiya Onodera
-
Patent number: 8930677Abstract: 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.Type: GrantFiled: August 24, 2012Date of Patent: January 6, 2015Assignee: International Business Machines CorporationInventors: Hiroshi Horii, Kiyokuni Kawachiya, Tamiya Onodera
-
Patent number: 8918622Abstract: 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.Type: GrantFiled: January 11, 2012Date of Patent: December 23, 2014Assignee: International Business Machines CorporationInventors: Hiroshi Horii, Kiyokuni Kawachiya, Tamiya Onodera
-
Patent number: 8782623Abstract: A technique for comprehensively acquiring calling-context information at a low cost. Call site IDs are held for each thread as a call history and used as context information. At the time of calling a method, the call history existing in a current frame is shifted left, and stacked in a new frame, with the call site ID of the call site put in the lower bits. At the time of returning from the method, the value of the original call history is returned by returning the frame. At the time of performing a virtual call, call history information is recorded into a call position profile table used to identify a method to be inlined at the time of performing JIT compiling, in addition to determined jump destination information and the number of calls.Type: GrantFiled: October 14, 2011Date of Patent: July 15, 2014Assignee: International Business Machines CorporationInventors: Derek B. Inglis, Kiyokuni Kawachiya, Tamiya Onodera, Michiaki Tatsubori
-
Publication number: 20140082127Abstract: 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.Type: ApplicationFiled: November 18, 2013Publication date: March 20, 2014Applicant: INTERNATIONAL BUSINESS CORPORATIONInventors: Miki Enoki, Hiroshi Horii, Tamiya Onodera, Yohsuke Ozawa
-
Publication number: 20140040327Abstract: 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.Type: ApplicationFiled: August 7, 2012Publication date: February 6, 2014Applicant: International Business Machines CorporationInventors: Tamiya Onodera, Kiyokuni Kawachiya
-
Publication number: 20140040326Abstract: 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.Type: ApplicationFiled: July 31, 2012Publication date: February 6, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Tamiya Onodera, Kiyokuni Kawachiya
-
Patent number: 8589438Abstract: 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.Type: GrantFiled: October 1, 2009Date of Patent: November 19, 2013Assignee: International Business Machines CorporationInventors: Miki Enoki, Hiroshi Horii, Tamiya Onodera, Yohsuke Ozawa
-
Publication number: 20130304811Abstract: 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.Type: ApplicationFiled: July 19, 2013Publication date: November 14, 2013Inventors: Michiaki Tatsubori, Toyotaro Suzumura, Tamiya Onodera
-
Publication number: 20130305220Abstract: 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.Type: ApplicationFiled: July 12, 2013Publication date: November 14, 2013Inventors: Kiyokuni Kawachiya, Rei Odaira, Tamiya Onodera
-
Patent number: 8516361Abstract: 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.Type: GrantFiled: December 14, 2008Date of Patent: August 20, 2013Assignee: International Business Machines CorporationInventors: Michiaki Tatsubori, Toyotaro Suzumura, Tamiya Onodera
-
Patent number: 8495647Abstract: 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.Type: GrantFiled: December 9, 2010Date of Patent: July 23, 2013Assignee: International Business Machines CorporationInventors: Kiyokuni Kawachiya, Rei Odaira, Tamiya Onodera
-
Patent number: 8473969Abstract: 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.Type: GrantFiled: July 15, 2008Date of Patent: June 25, 2013Assignee: International Business Machines CorporationInventors: Takeshi Ogasawara, Akira Koseki, Hideaki Komatsu, Kiyokuni Kawachiya, Tamiya Onodera
-
Patent number: 8443352Abstract: 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.Type: GrantFiled: March 31, 2008Date of Patent: May 14, 2013Assignee: International Business Machines CorporationInventors: Michiaki Tatsubori, Akihiko Tozawa, Toyotaro Suzumura, Tamiya Onodera, Scott Ross Trent
-
Patent number: 8352858Abstract: A high-speed web server that generates an HTML file upon receipt of an HTTP request is described. The server includes an application executor device and an HTTP server device that receives the HTTP request and sends an HTTP response to the HTTP request. A method for sending an HTTP response in a server that generates an HTML file upon receipt of an HTTP request is also provided. The method includes: executing a script; calculating the number of appearances of the string; storing the string in a storage; executing a script when the script is a command for processing a string; replacing the string with reference information; and sending the string file along with the HTML file when it includes reference information for reference to the string file.Type: GrantFiled: April 15, 2010Date of Patent: January 8, 2013Assignee: International Business Machines CorporationInventors: Tamiya Onodera, Toyotaro Suzumura, Michiaki Tatsubori
-
Publication number: 20120324206Abstract: 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.Type: ApplicationFiled: August 24, 2012Publication date: December 20, 2012Applicant: International Business Machines CorporationInventors: Hiroshi Horii, Kiyokuni Kawachiya, Tamiya Onodera
-
Patent number: 8275812Abstract: 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.Type: GrantFiled: May 20, 2009Date of Patent: September 25, 2012Assignee: International Business Machines CorporationInventors: Kiyokuni Kawachiya, Kazunori Ogata, Tamiya Onodera
-
Publication number: 20120191947Abstract: 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.Type: ApplicationFiled: January 11, 2012Publication date: July 26, 2012Applicant: International Business Machine CorporationInventors: Hiroshi Horii, Kiyokuni Kawachiya, Tamiya Onodera
-
Patent number: 8205192Abstract: 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.Type: GrantFiled: November 10, 2008Date of Patent: June 19, 2012Assignee: International Business Machines CorporationInventors: Takeshi Ogasawara, Tamiya Onodera, Mikio Takeuchi
-
Patent number: 8176100Abstract: 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.Type: GrantFiled: August 15, 2008Date of Patent: May 8, 2012Assignee: International Business Machines CorporatonInventors: Tamiya Onodera, Kiyokuni Kawachiya, Kazunori Ogata