Patents by Inventor Shaolei Ren

Shaolei Ren 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: 20230409871
    Abstract: Embodiments determine inference classification for use on tiny devices. A processor is coupled with an item memory configured to store a plurality of binary vectors representing discrete values; a feature memory configured to store a plurality of binary vectors for instances of binary code; and an associate memory configured to store a plurality of predefined class vectors. Each of the plurality of discrete values associated with a feature vector are loaded from the item memory and mapped. The value vectors associated with the discrete values are stacked with one or more instances of binary code, such that the stacked dimension of the value vectors matches the dimension of the feature vectors. A matrix multiplication is performed on the stacked vectors to produce a sample vector. A comparison result is generated by comparing the sample vector against the class vectors, and the sample vector is classified based on the comparison results.
    Type: Application
    Filed: June 21, 2023
    Publication date: December 21, 2023
    Inventors: Xiaolin Xu, Shijin Duan, Shaolei Ren
  • Patent number: 11829804
    Abstract: A processing system is described which assigns jobs to heterogeneous processing modules. The processing system assigns jobs to the processing modules in a manner that attempts to accommodate the service demands of the jobs, but without advance knowledge of the service demands. In one case, the processing system implements the processing modules as computing units that have different physical characteristics. Alternatively, or in addition, the processing system may implement the processing modules as threads that are executed by computing units. Each thread which runs on a computing unit offers a level of performance that depends on a number of other threads that are simultaneously being executed by the same computing unit.
    Type: Grant
    Filed: September 15, 2021
    Date of Patent: November 28, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yuxiong He, Sameh Elnikety, Kathryn S. McKinley, Shaolei Ren
  • Publication number: 20220004441
    Abstract: A processing system is described which assigns jobs to heterogeneous processing modules. The processing system assigns jobs to the processing modules in a manner that attempts to accommodate the service demands of the jobs, but without advance knowledge of the service demands. In one case, the processing system implements the processing modules as computing units that have different physical characteristics. Alternatively, or in addition, the processing system may implement the processing modules as threads that are executed by computing units. Each thread which runs on a computing unit offers a level of performance that depends on a number of other threads that are simultaneously being executed by the same computing unit.
    Type: Application
    Filed: September 15, 2021
    Publication date: January 6, 2022
    Inventors: Yuxiong HE, Sameh ELNIKETY, Kathryn MCKINLEY, Shaolei REN
  • Patent number: 11126473
    Abstract: A processing system is described which assigns jobs to heterogeneous processing modules. The processing system assigns jobs to the processing modules in a manner that attempts to accommodate the service demands of the jobs, but without advance knowledge of the service demands. In one case, the processing system implements the processing modules as computing units that have different physical characteristics. Alternatively, or in addition, the processing system may implement the processing modules as threads that are executed by computing units. Each thread which runs on a computing unit offers a level of performance that depends on a number of other threads that are simultaneously being executed by the same computing unit.
    Type: Grant
    Filed: March 15, 2019
    Date of Patent: September 21, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Yuxiong He, Sameh Elnikety, Kathryn S. Mckinley, Shaolei Ren
  • Publication number: 20190213053
    Abstract: A processing system is described which assigns jobs to heterogeneous processing modules. The processing system assigns jobs to the processing modules in a manner that attempts to accommodate the service demands of the jobs, but without advance knowledge of the service demands. In one case, the processing system implements the processing modules as computing units that have different physical characteristics. Alternatively, or in addition, the processing system may implement the processing modules as threads that are executed by computing units. Each thread which runs on a computing unit offers a level of performance that depends on a number of other threads that are simultaneously being executed by the same computing unit.
    Type: Application
    Filed: March 15, 2019
    Publication date: July 11, 2019
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Yuxiong HE, Sameh ELNIKETY, Kathryn S. MCKINLEY, Shaolei REN
  • Patent number: 10303524
    Abstract: A processing system is described which assigns jobs to heterogeneous processing modules. The processing system assigns jobs to the processing modules in a manner that attempts to accommodate the service demands of the jobs, but without advance knowledge of the service demands. In one case, the processing system implements the processing modules as computing units that have different physical characteristics. Alternatively, or in addition, the processing system may implement the processing modules as threads that are executed by computing units. Each thread which runs on a computing unit offers a level of performance that depends on a number of other threads that are simultaneously being executed by the same computing unit.
    Type: Grant
    Filed: April 6, 2016
    Date of Patent: May 28, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yuxiong He, Sameh Elnikety, Kathryn S. McKinley, Shaolei Ren
  • Publication number: 20160217015
    Abstract: A processing system is described which assigns jobs to heterogeneous processing modules. The processing system assigns jobs to the processing modules in a manner that attempts to accommodate the service demands of the jobs, but without advance knowledge of the service demands. In one case, the processing system implements the processing modules as computing units that have different physical characteristics. Alternatively, or in addition, the processing system may implement the processing modules as threads that are executed by computing units. Each thread which runs on a computing unit offers a level of performance that depends on a number of other threads that are simultaneously being executed by the same computing unit.
    Type: Application
    Filed: April 6, 2016
    Publication date: July 28, 2016
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Yuxiong HE, Sameh ELNIKETY, Kathryn S. MCKINLEY, Shaolei REN
  • Patent number: 9336057
    Abstract: A processing system is described which assigns jobs to heterogeneous processing modules. The processing system assigns jobs to the processing modules in a manner that attempts to accommodate the service demands of the jobs, but without advance knowledge of the service demands. In one case, the processing system implements the processing modules as computing units that have different physical characteristics. Alternatively, or in addition, the processing system may implement the processing modules as threads that are executed by computing units. Each thread which runs on a computing unit offers a level of performance that depends on a number of other threads that are simultaneously being executed by the same computing unit.
    Type: Grant
    Filed: December 21, 2012
    Date of Patent: May 10, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yuxiong He, Sameh Elnikety, Kathryn S. McKinley, Shaolei Ren
  • Publication number: 20140181825
    Abstract: A processing system is described which assigns jobs to heterogeneous processing modules. The processing system assigns jobs to the processing modules in a manner that attempts to accommodate the service demands of the jobs, but without advance knowledge of the service demands. In one case, the processing system implements the processing modules as computing units that have different physical characteristics. Alternatively, or in addition, the processing system may implement the processing modules as threads that are executed by computing units. Each thread which runs on a computing unit offers a level of performance that depends on a number of other threads that are simultaneously being executed by the same computing unit.
    Type: Application
    Filed: December 21, 2012
    Publication date: June 26, 2014
    Applicant: Microsoft Corporation
    Inventors: Yuxiong He, Sameh Elnikety, Kathryn S. McKinley, Shaolei Ren