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: 9021496
    Abstract: 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: Grant
    Filed: July 12, 2013
    Date of Patent: April 28, 2015
    Assignee: International Business Machines Corporation
    Inventors: Kiyokuni Kawachiya, Rei Odaira, Tamiya Onodera
  • Patent number: 8930677
    Abstract: 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: Grant
    Filed: August 24, 2012
    Date of Patent: January 6, 2015
    Assignee: International Business Machines Corporation
    Inventors: Hiroshi Horii, Kiyokuni Kawachiya, Tamiya Onodera
  • Patent number: 8918622
    Abstract: 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: Grant
    Filed: January 11, 2012
    Date of Patent: December 23, 2014
    Assignee: International Business Machines Corporation
    Inventors: Hiroshi Horii, Kiyokuni Kawachiya, Tamiya Onodera
  • Patent number: 8782623
    Abstract: 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: Grant
    Filed: October 14, 2011
    Date of Patent: July 15, 2014
    Assignee: International Business Machines Corporation
    Inventors: Derek B. Inglis, Kiyokuni Kawachiya, Tamiya Onodera, Michiaki Tatsubori
  • Publication number: 20140082127
    Abstract: 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: Application
    Filed: November 18, 2013
    Publication date: March 20, 2014
    Applicant: INTERNATIONAL BUSINESS CORPORATION
    Inventors: Miki Enoki, Hiroshi Horii, Tamiya Onodera, Yohsuke Ozawa
  • Publication number: 20140040327
    Abstract: 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: Application
    Filed: August 7, 2012
    Publication date: February 6, 2014
    Applicant: International Business Machines Corporation
    Inventors: Tamiya Onodera, Kiyokuni Kawachiya
  • Publication number: 20140040326
    Abstract: 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: Application
    Filed: July 31, 2012
    Publication date: February 6, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Tamiya Onodera, Kiyokuni Kawachiya
  • Patent number: 8589438
    Abstract: 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: Grant
    Filed: October 1, 2009
    Date of Patent: November 19, 2013
    Assignee: International Business Machines Corporation
    Inventors: Miki Enoki, Hiroshi Horii, Tamiya Onodera, Yohsuke Ozawa
  • Publication number: 20130304811
    Abstract: 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: Application
    Filed: July 19, 2013
    Publication date: November 14, 2013
    Inventors: Michiaki Tatsubori, Toyotaro Suzumura, Tamiya Onodera
  • Publication number: 20130305220
    Abstract: 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: Application
    Filed: July 12, 2013
    Publication date: November 14, 2013
    Inventors: Kiyokuni Kawachiya, Rei Odaira, Tamiya Onodera
  • Patent number: 8516361
    Abstract: 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: Grant
    Filed: December 14, 2008
    Date of Patent: August 20, 2013
    Assignee: International Business Machines Corporation
    Inventors: Michiaki Tatsubori, Toyotaro Suzumura, Tamiya Onodera
  • Patent number: 8495647
    Abstract: 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: Grant
    Filed: December 9, 2010
    Date of Patent: July 23, 2013
    Assignee: International Business Machines Corporation
    Inventors: Kiyokuni Kawachiya, Rei Odaira, Tamiya Onodera
  • Patent number: 8473969
    Abstract: 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: Grant
    Filed: July 15, 2008
    Date of Patent: June 25, 2013
    Assignee: International Business Machines Corporation
    Inventors: Takeshi Ogasawara, Akira Koseki, Hideaki Komatsu, Kiyokuni Kawachiya, Tamiya Onodera
  • Patent number: 8443352
    Abstract: 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: Grant
    Filed: March 31, 2008
    Date of Patent: May 14, 2013
    Assignee: International Business Machines Corporation
    Inventors: Michiaki Tatsubori, Akihiko Tozawa, Toyotaro Suzumura, Tamiya Onodera, Scott Ross Trent
  • Patent number: 8352858
    Abstract: 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: Grant
    Filed: April 15, 2010
    Date of Patent: January 8, 2013
    Assignee: International Business Machines Corporation
    Inventors: Tamiya Onodera, Toyotaro Suzumura, Michiaki Tatsubori
  • Publication number: 20120324206
    Abstract: 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: Application
    Filed: August 24, 2012
    Publication date: December 20, 2012
    Applicant: International Business Machines Corporation
    Inventors: Hiroshi Horii, Kiyokuni Kawachiya, Tamiya Onodera
  • Patent number: 8275812
    Abstract: 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: Grant
    Filed: May 20, 2009
    Date of Patent: September 25, 2012
    Assignee: International Business Machines Corporation
    Inventors: Kiyokuni Kawachiya, Kazunori Ogata, Tamiya Onodera
  • Publication number: 20120191947
    Abstract: 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: Application
    Filed: January 11, 2012
    Publication date: July 26, 2012
    Applicant: International Business Machine Corporation
    Inventors: Hiroshi Horii, Kiyokuni Kawachiya, Tamiya Onodera
  • Patent number: 8205192
    Abstract: 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: Grant
    Filed: November 10, 2008
    Date of Patent: June 19, 2012
    Assignee: International Business Machines Corporation
    Inventors: Takeshi Ogasawara, Tamiya Onodera, Mikio Takeuchi
  • Patent number: 8176100
    Abstract: 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: Grant
    Filed: August 15, 2008
    Date of Patent: May 8, 2012
    Assignee: International Business Machines Corporaton
    Inventors: Tamiya Onodera, Kiyokuni Kawachiya, Kazunori Ogata