Patents by Inventor Chu-cheow Lim

Chu-cheow Lim 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).

  • Publication number: 20220004438
    Abstract: The present disclosure relates to methods and apparatus for graphical processing. A processing unit may generate or utilize different versions of a GPU program based on hardware resources allocated to the GPU program at runtime. The processing unit may be configured to generate a first version of a GPU program that accesses a resource from a global memory of the processing unit 120 and a second version of the GPU program that access the resource from a fast shared resource of the processing unit 120. The processing unit may utilize the first version of the GPU program if the resource cannot be stored on the fast shared resource allocated to the GPU program at run time, and may utilize the second version of the GPU program if the resource can be stored on the fast shared resource allocated to the GPU program at run time.
    Type: Application
    Filed: July 2, 2020
    Publication date: January 6, 2022
    Inventors: Chunling HU, Chu-Cheow LIM
  • Patent number: 9996325
    Abstract: In one example, a device includes one or more processors configured to determine a set of optimization pass configuration data for code of a software program to be compiled, wherein the optimization pass configuration data defines a sequence of optimization passes for the software program during compilation, and execute the sequence of optimization passes on code for the software program based on the set of optimization pass configuration data.
    Type: Grant
    Filed: March 6, 2013
    Date of Patent: June 12, 2018
    Assignee: QUALCOMM Incorporated
    Inventors: Chu-Cheow Lim, David Samuel Brackman
  • Patent number: 9710245
    Abstract: An apparatus includes a memory and a compiling processor configured to: generate, by at least one of a group consisting of a compiler and a runtime executing on the compiling processor, arguments for executing a compiled kernel, determine, by the at least one of the group executing on the compiling processor, whether a first memory reference to a first memory region and a second memory reference to a second memory region of the arguments refer to a same memory region, generate, by the at least one of the group, metadata associated with the first memory reference and the second memory reference based on the determination, wherein the metadata indicates a relationship between the first memory region and the second memory region. The at least one of the compiler and the runtime may recompile the kernel based on the metadata, and instruct a target processor to execute the recompiled kernel.
    Type: Grant
    Filed: April 4, 2014
    Date of Patent: July 18, 2017
    Assignee: QUALCOMM Incorporated
    Inventors: Chu-Cheow Lim, David Samuel Brackman
  • Publication number: 20150286472
    Abstract: An apparatus includes a memory and a compiling processor configured to: generate, by at least one of a group consisting of a compiler and a runtime executing on the compiling processor, arguments for executing a compiled kernel, determine, by the at least one of the group executing on the compiling processor, whether a first memory reference to a first memory region and a second memory reference to a second memory region of the arguments refer to a same memory region, generate, by the at least one of the group, metadata associated with the first memory reference and the second memory reference based on the determination, wherein the metadata indicates a relationship between the first memory region and the second memory region. The at least one of the compiler and the runtime may recompile the kernel based on the metadata, and instruct a target processor to execute the recompiled kernel.
    Type: Application
    Filed: April 4, 2014
    Publication date: October 8, 2015
    Applicant: QUALCOMM Incorporated
    Inventors: Chu-Cheow Lim, David Samuel Brackman
  • Patent number: 9027007
    Abstract: In one example, a device includes one or more processors configured to determine an allocated time for execution of an optimization pass for optimizing code for a software program, execute at least some instructions of the optimization pass on the code, and, in response to determining that an actual time for execution of the optimization pass has exceeded the allocated time for execution, preventing execution of subsequent instructions of the optimization pass.
    Type: Grant
    Filed: March 6, 2013
    Date of Patent: May 5, 2015
    Assignee: QUALCOMM Incorporated
    Inventors: David Samuel Brackman, Chu-Cheow Lim
  • Publication number: 20140258996
    Abstract: In one example, a device includes one or more processors configured to determine an allocated time for execution of an optimization pass for optimizing code for a software program, execute at least some instructions of the optimization pass on the code, and, in response to determining that an actual time for execution of the optimization pass has exceeded the allocated time for execution, preventing execution of subsequent instructions of the optimization pass.
    Type: Application
    Filed: March 6, 2013
    Publication date: September 11, 2014
    Applicant: QUALCOMM INCORPORATED
    Inventors: David Samuel Brackman, Chu-Cheow Lim
  • Publication number: 20140258997
    Abstract: In one example, a device includes one or more processors configured to determine a set of optimization pass configuration data for code of a software program to be compiled, wherein the optimization pass configuration data defines a sequence of optimization passes for the software program during compilation, and execute the sequence of optimization passes on code for the software program based on the set of optimization pass configuration data.
    Type: Application
    Filed: March 6, 2013
    Publication date: September 11, 2014
    Applicant: QUALCOMM INCORPORATED
    Inventors: Chu-Cheow Lim, David Samuel Brackman
  • Patent number: 7688232
    Abstract: A method of compressing instructions in a program may include extracting unique bit patterns from the instructions in the program and constructing a linear programming formulation or an integer programming formulation from the unique bit patterns, the instructions, and/or the size of a memory storage. The linear programming formulation or the integer programming formulation may be solved to produce a solution. The method may include compressing at least some of the instructions based on the solution by storing at least some of the unique bit patterns in a memory and placing corresponding indices to the memory in new compressed instructions.
    Type: Grant
    Filed: March 27, 2007
    Date of Patent: March 30, 2010
    Assignee: Intel Corporation
    Inventors: Chu-Cheow Lim, Guei-Yuan Lueh, Bixia Zheng, Hong Jiang
  • Patent number: 7627864
    Abstract: A method to optimize speculative parallel thread execution comprises selecting a plurality of partition candidate pairs for speculative parallel thread execution, transforming each partition candidate pair of the plurality of partition candidate pairs to improve the expected performance gain of each pair, and selecting a set of one or more transformed partition candidate pairs that do not interfere with each other and produce a maximum expected performance gain.
    Type: Grant
    Filed: June 27, 2005
    Date of Patent: December 1, 2009
    Assignee: Intel Corporation
    Inventors: Zhao Hui Du, Tin-fook Ngai, Chu-cheow Lim
  • Patent number: 7617495
    Abstract: Disclosed are embodiments of a compiler, methods, and system for resource-aware scheduling of instructions. A list scheduling approach is augmented to take into account resource constraints when determining priority for scheduling of instructions. Other embodiments are also described and claimed.
    Type: Grant
    Filed: March 24, 2004
    Date of Patent: November 10, 2009
    Assignee: Intel Corporation
    Inventors: Kalyan Muthukumar, Daniel M. Lavery, Gerolf F. Hoflehner, Chu-cheow Lim, Jean-Francois Collard
  • Publication number: 20080244245
    Abstract: A method of compressing instructions in a program may include extracting unique bit patterns from the instructions in the program and constructing a linear programming formulation or an integer programming formulation from the unique bit patterns, the instructions, and/or the size of a memory storage. The linear programming formulation or the integer programming formulation may be solved to produce a solution. The method may include compressing at least some of the instructions based on the solution by storing at least some of the unique bit patterns in a memory and placing corresponding indices to the memory in new compressed instructions.
    Type: Application
    Filed: March 27, 2007
    Publication date: October 2, 2008
    Inventors: Chu-Cheow Lim, Guei-Yuan Lueh, Bixia Zheng, Hong Jiang
  • Publication number: 20080162522
    Abstract: In some embodiments, a data structure may be received in a first processing system. The data structure may represent a plurality of instructions for a second processing system. For at least one instruction of the plurality of instructions, a determination may be made as to whether the instruction can be replaced by a compact instruction for the second processing system. A compact instruction may be generated if the instruction can be replaced by a compact instruction. In some embodiments, an instruction may be received in a processing system. A determination may be made as to whether the instruction is a compact instruction. A decompacted instruction may be generated if the instruction is a compact instruction.
    Type: Application
    Filed: December 29, 2006
    Publication date: July 3, 2008
    Inventors: Guei-Yuan Lueh, Hong Jiang, Andrew T. Riffel, Bixia Zheng, Chu-Cheow Lim, Milind Girkar, David C. Sehr, Thomas A. Piazza
  • Patent number: 7379858
    Abstract: A Markov chain model of a software system may be used to compute all-pairs reaching probabilities to provide guidance in performing speculative operations with respect to the software system.
    Type: Grant
    Filed: February 17, 2004
    Date of Patent: May 27, 2008
    Assignee: Intel Corporation
    Inventors: Chu-Cheow Lim, Zhao Hui Du, Tin-Fook Ngai
  • Publication number: 20070011684
    Abstract: A method to optimize speculative parallel thread execution comprises selecting a plurality of partition candidate pairs for speculative parallel thread execution, transforming each partition candidate pair of the plurality of partition candidate pairs to improve the expected performance gain of each pair, and selecting a set of one or more transformed partition candidate pairs that do not interfere with each other and produce a maximum expected performance gain.
    Type: Application
    Filed: June 27, 2005
    Publication date: January 11, 2007
    Inventors: Zhao Du, Tin-fook Ngai, Chu-cheow Lim
  • Publication number: 20050216899
    Abstract: Disclosed are embodiments of a compiler, methods, and system for resource-aware scheduling of instructions. A list scheduling approach is augmented to take into account resource constraints when determining priority for scheduling of instructions. Other embodiments are also described and claimed.
    Type: Application
    Filed: March 24, 2004
    Publication date: September 29, 2005
    Inventors: Kalyan Muthukumar, Daniel Lavery, Gerolf Hoflehner, Chu-Cheow Lim, Jean-Francois Collard
  • Publication number: 20050182602
    Abstract: A Markov chain model of a software system may be used to compute all-pairs reaching probabilities to provide guidance in performing speculative operations with respect to the software system.
    Type: Application
    Filed: February 17, 2004
    Publication date: August 18, 2005
    Applicant: Intel Corporation
    Inventors: Chu-Cheow Lim, Zhao Du, Tin-Fook Ngai
  • Patent number: 6880154
    Abstract: An apparatus, method, and program product for optimizing code that contains dynamically-allocated memory. The aliasing behavior of internal pointers of dynamically-allocated memory is used to disambiguate memory accesses and to eliminate false data dependencies. It is determined whether a dynamically-allocated array will behave like a statically-allocated array throughout the entire program execution once it has been allocated. This determination is used to improve the instruction scheduling efficiency, which yields better performance.
    Type: Grant
    Filed: June 29, 2001
    Date of Patent: April 12, 2005
    Assignee: Intel Corporation
    Inventors: Somnath Ghosh, Rakesh Krishnaiyer, Wei Li, Abhay Kanhere, Dattatraya Kulkarni, Chu-cheow Lim, John L. Ng
  • Publication number: 20030005420
    Abstract: An apparatus, method, and program product for optimizing code that contains dynamically-allocated memory. The aliasing behavior of internal pointers of dynamically-allocated memory is used to disambiguate memory accesses and to eliminate false data dependencies. It is determined whether a dynamically-allocated array will behave like a statically-allocated array throughout the entire program execution once it has been allocated. This determination is used to improve the instruction scheduling efficiency, which yields better performance.
    Type: Application
    Filed: June 29, 2001
    Publication date: January 2, 2003
    Inventors: Somnath Ghosh, Rakesh Krishnaiyer, Wei Li, Abhay Kanhere, Dattatraya Kulkarni, Chu-cheow Lim, John L. Ng