Patents by Inventor Reza AZIMI
Reza AZIMI 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: 11935309Abstract: This document discloses methods of training a classifier to identify traffic signal states in images captured be a vehicle. The vehicle can then use the identified states when making movement decisions when traveling in an environment. The system determines that a traffic signal is within a field of view of the camera (i.e., within an image). The system also receives a signal with signal phase and timing data for the traffic signal. The system processes the images to identify an image that includes the traffic signal. The system analyzes the signal data to determine a state of the traffic signal at the time of image capture, labels the image with a label of determined state, and passes the image and a label to a classifier in order to train the classifier.Type: GrantFiled: August 25, 2020Date of Patent: March 19, 2024Assignee: FORD GLOBAL TECHNOLOGIES, LLCInventors: Guy Hotson, Richard L. Kwant, David James Chekan, Reza Azimi
-
Publication number: 20240012646Abstract: There is provided a system and method of prefetching array segments. A prefetcher management unit (PMU) is disclosed. The PMU includes an interface to interact with programs via an application programming interface (API) and one or more data structures configured to store a plurality of addresses, each of the plurality of addresses representing a memory location of data stored in an array segment. The PMU also includes a prefetcher interface configured to use an address in the one or more data structures to instruct a prefetcher to prefetch data into a cache and a load-store unit interface configured to use the address in the one or more data structures to instruct a load-store unit to load data from the cache.Type: ApplicationFiled: July 6, 2022Publication date: January 11, 2024Applicant: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Tomasz Sebastian CZAJKOWSKI, Reza AZIMI, Maziar GOUDARZI, Man Pok HO, Julian HUMECKI
-
Patent number: 11816488Abstract: There is provided methods and devices for dynamically simplifying processor instructions. A method includes receiving, at a computing device, processor instructions and determining, by the computing device, if instruction simplification is enabled for an instruction being processed. The method further includes determining, by the computing device, from an instruction simplification table if the instruction is capable of being simplified and scheduling, by the computing device, a simplified instruction based on the determination from the instruction simplification table. A device includes a processor, and a non-transient computer readable memory having stored thereon instructions which when executed by the processor configure the device to execute the methods disclosed herein.Type: GrantFiled: November 10, 2021Date of Patent: November 14, 2023Assignee: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Henry Fangli Kao, Shehab Yomn Abdellatif Elsayed, Tomasz Sebastian Czajkowski, Reza Azimi, Ehsan Amiri
-
Publication number: 20230315476Abstract: A method of branch prediction includes, in a pre-execute loop, loading a series of instructions leading to a load dependent branch (LDB) instruction including a load instruction, executing the load instruction to receive a part of a branch condition, computing a branch outcome of the LDB instruction based on the branch condition, and storing the branch outcome to a branch-outcome memory. Then, in a main loop corresponding to the pre-execute loop, loading the LDB instruction, reading the branch outcome from the branch-outcome memory, and executing the main loop based on the branch outcome. In some cases, the method, in the main loop, computes the branch outcome of the branch condition again.Type: ApplicationFiled: March 30, 2022Publication date: October 5, 2023Applicant: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Maziar GOUDARZI, Julian HUMECKI, Reza AZIMI
-
Patent number: 11740906Abstract: A method and hardware system to remove the overhead caused by having stream handling instructions in nested loops. Where code contains inner loops, nested in outer loops, a compiler pass identifies qualified nested streams and generates ISA specific instructions for transferring stream information linking an inner loop stream with an outer loop stream, to hardware components of a co-designed prefetcher. The hardware components include a frontend able to decode and execute instructions for a stream linking information transfer mechanism, a stream engine unit with a streams configuration table (SCT) having a field for allowing a subordinate stream to stay pending for values from its master stream, and a stream prefetch manager with buffers for storing values of current elements of a master stream, and with a nested streams control unit for reconfiguring and iterating the streams.Type: GrantFiled: February 22, 2022Date of Patent: August 29, 2023Assignee: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Maziar Goudarzi, Zhizhao Qian, Reza Azimi, Billy Mengxuan Cai, Man Pok Ho
-
Publication number: 20230214217Abstract: A method and device for providing a vector stream instruction set architecture extension for a CPU. In one aspect, there is provided a vector stream engine unit comprising: a first fast memory storage for temporarily storing data of vector data streams from a memory for loading into a vector register file; a second fast memory storage for temporarily storing data of the vector data streams from the vector register file for loading into the memory; a prefetcher configured to prefetch data of the vector data streams from the memory into the first fast storage memory, and prefetch data of the vector data streams from the vector register file into the second fast storage memory; and a stream configuration table (SCT) storing stream information for prefetching data from the vector data streams.Type: ApplicationFiled: January 6, 2022Publication date: July 6, 2023Inventors: Maziar GOUDARZI, Reza AZIMI, Man Pok HO, Zhizhao QIAN
-
Publication number: 20230145754Abstract: There is provided methods and devices for dynamically simplifying processor instructions. A method includes receiving, at a computing device, processor instructions and determining, by the computing device, if instruction simplification is enabled for an instruction being processed. The method further includes determining, by the computing device, from an instruction simplification table if the instruction is capable of being simplified and scheduling, by the computing device, a simplified instruction based on the determination from the instruction simplification table. A device includes a processor, and a non-transient computer readable memory having stored thereon instructions which when executed by the processor configure the device to execute the methods disclosed herein.Type: ApplicationFiled: November 10, 2021Publication date: May 11, 2023Applicant: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Henry Fangli KAO, Shehab Yomn Abdellatif ELSAYED, Tomasz Sebastian CZAJKOWSKI, Reza AZIMI, Ehsan AMIRI
-
Patent number: 11573777Abstract: A method includes analyzing a dataflow graph representing data dependencies between operators of a dataflow application to identify a plurality of candidate groups of the operators. Based on characteristics of a given hardware accelerator and the operators of a given candidate group of the plurality of candidate groups, determining whether the operators of the given candidate group are to be combined. In response to determining that the operators of the given candidate group are to be combined, retrieving executable binary code segments corresponding to the operators of the given candidate group, generating a unit of binary code including the executable binary code segments and metadata representing an execution control flow among the executable binary code segments, and dispatching the unit of code to the given hardware accelerator for execution of the unit of code.Type: GrantFiled: February 26, 2021Date of Patent: February 7, 2023Assignee: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Reza Azimi, Cheng Xiang Feng, Kai-Ting Amy Wang, Yaoqing Gao, Ye Tian, Xiang Wang
-
Publication number: 20220392590Abstract: Techniques for identifying change points in health data are described herein. Health data during a first time sub-window is compared to health data from a second time sub-window. The health data is evaluated with respect to a set of change point criteria to determine that a first change is a first change point in the health data. A notification including information about the change point and information about a second change point is generated.Type: ApplicationFiled: June 3, 2022Publication date: December 8, 2022Applicant: Apple Inc.Inventors: Lucas O. Winstrom, Blanca Isabel C. Villanueva, Glen R. DePalma, Reza Azimi
-
Publication number: 20220269508Abstract: A method and hardware system to remove the overhead caused by having stream handling instructions in nested loops. Where code contains inner loops, nested in outer loops, a compiler pass identifies qualified nested streams and generates ISA specific instructions for transferring stream information linking an inner loop stream with an outer loop stream, to hardware components of a co-designed prefetcher. The hardware components include a frontend able to decode and execute instructions for a stream linking information transfer mechanism, a stream engine unit with a streams configuration table (SCT) having a field for allowing a subordinate stream to stay pending for values from its master stream, and a stream prefetch manager with buffers for storing values of current elements of a master stream, and with a nested streams control unit for reconfiguring and iterating the streams.Type: ApplicationFiled: February 22, 2022Publication date: August 25, 2022Applicant: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Maziar GOUDARZI, Zhizhao QIAN, Reza AZIMI, Billy Mengxuan CAI, Man Pok HO
-
Patent number: 11360641Abstract: An example method includes, at an electronic device with one or more processors and memory: detecting a new type of available information, the new type of available information being associated with a card for display in a content feed; in accordance with detecting the new type of available information, increasing a relevance score of the card above a display threshold; in accordance with increasing the relevance score above the display threshold: causing the card to be displayed in the content feed; and obtaining data representing user interaction with the displayed card; adjusting, based on the data representing user interaction with the displayed card, the relevance score; and modifying a display of the card in the content feed based on the adjusted relevance score.Type: GrantFiled: August 22, 2019Date of Patent: June 14, 2022Assignee: Apple Inc.Inventors: Joshua Rominski Ford, Reza Azimi, Lucas Olen Winstrom, Zachary James Waterson, Terrence J. Talbot, James D. Dusseau
-
Publication number: 20220114022Abstract: Systems and methods for machine learning-based power capping and virtual machine placement in cloud platforms are disclosed. A method includes applying a machine learning model to predict whether a request for deployment of a virtual machine corresponds to deployment of a user-facing (UF) virtual machine or a non-user-facing (NUF) virtual machine. The method further includes sorting a list of candidate servers based on both a chassis score and a server score for each server to determine a ranked list of the candidate servers, where the server score depends at least on whether the request for the deployment of the virtual machine is determined to be a request for a deployment of a UF virtual machine or a request for a deployment of an NUF virtual machine. The method further includes deploying the virtual machine to a server with highest rank among the ranked list of the candidate servers.Type: ApplicationFiled: December 21, 2021Publication date: April 14, 2022Inventors: Ioannis Manousakis, Marcus F. Fontoura, Alok Gautam Kumbhare, Ricardo G. Bianchini, Nithish Mahalingam, Reza Azimi
-
Publication number: 20220067406Abstract: This document discloses methods of training a classifier to identify traffic signal states in images captured be a vehicle. The vehicle can then use the identified states when making movement decisions when traveling in an environment. The system determines that a traffic signal is within a field of view of the camera (i.e., within an image). The system also receives a signal with signal phase and timing data for the traffic signal. The system processes the images to identify an image that includes the traffic signal. The system analyzes the signal data to determine a state of the traffic signal at the time of image capture, labels the image with a label of determined state, and passes the image and a label to a classifier in order to train the classifier.Type: ApplicationFiled: August 25, 2020Publication date: March 3, 2022Inventors: Guy Hotson, Richard L. Kwant, David James Chekan, Reza Azimi
-
Patent number: 11237868Abstract: Systems and methods for machine learning-based power capping and virtual machine placement in cloud platforms are disclosed. A method includes applying a machine learning model to predict whether a request for deployment of a virtual machine corresponds to deployment of a user-facing (UF) virtual machine or a non-user-facing (NUF) virtual machine. The method further includes sorting a list of candidate servers based on both a chassis score and a server score for each server to determine a ranked list of the candidate servers, where the server score depends at least on whether the request for the deployment of the virtual machine is determined to be a request for a deployment of a UF virtual machine or a request for a deployment of an NUF virtual machine. The method further includes deploying the virtual machine to a server with highest rank among the ranked list of the candidate servers.Type: GrantFiled: October 8, 2019Date of Patent: February 1, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Ioannis Manousakis, Marcus F. Fontoura, Alok Gautam Kumbhare, Ricardo G. Bianchini, Nithish Mahalingam, Reza Azimi
-
Patent number: 11144290Abstract: A method includes analyzing a dataflow graph representing data dependencies between operators of a dataflow application to identify a plurality of candidate groups of the operators. Based on characteristics of a given hardware accelerator and the operators of a given candidate group of the plurality of candidate groups, determining whether the operators of the given candidate group are to be combined. In response to determining that the operators of the given candidate group are to be combined, retrieving executable binary code segments corresponding to the operators of the given candidate group, generating a unit of binary code including the executable binary code segments and metadata representing an execution control flow among the executable binary code segments, and dispatching the unit of code to the given hardware accelerator for execution of the unit of code.Type: GrantFiled: September 13, 2019Date of Patent: October 12, 2021Assignee: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Reza Azimi, Cheng Xiang Feng, Kai-Ting Amy Wang, Yaoqing Gao, Ye Tian, Xiang Wang
-
Publication number: 20210182041Abstract: A method includes analyzing a dataflow graph representing data dependencies between operators of a dataflow application to identify a plurality of candidate groups of the operators. Based on characteristics of a given hardware accelerator and the operators of a given candidate group of the plurality of candidate groups, determining whether the operators of the given candidate group are to be combined. In response to determining that the operators of the given candidate group are to be combined, retrieving executable binary code segments corresponding to the operators of the given candidate group, generating a unit of binary code including the executable binary code segments and metadata representing an execution control flow among the executable binary code segments, and dispatching the unit of code to the given hardware accelerator for execution of the unit of code.Type: ApplicationFiled: February 26, 2021Publication date: June 17, 2021Applicant: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Reza AZIMI, Cheng Xiang FENG, Kai-Ting Amy WANG, Yaoqing GAO, Ye TIAN, Xiang WANG
-
Publication number: 20210103458Abstract: Systems and methods for machine learning-based power capping and virtual machine placement in cloud platforms are disclosed. A method includes applying a machine learning model to predict whether a request for deployment of a virtual machine corresponds to deployment of a user-facing (UF) virtual machine or a non-user-facing (NUF) virtual machine. The method further includes sorting a list of candidate servers based on both a chassis score and a server score for each server to determine a ranked list of the candidate servers, where the server score depends at least on whether the request for the deployment of the virtual machine is determined to be a request for a deployment of a UF virtual machine or a request for a deployment of an NUF virtual machine. The method further includes deploying the virtual machine to a server with highest rank among the ranked list of the candidate servers.Type: ApplicationFiled: October 8, 2019Publication date: April 8, 2021Inventors: Ioannis Manousakis, Marcus F. Fontoura, Alok Gautam Kumbhare, Ricardo G. Bianchini, Nithish Mahalingam, Reza Azimi
-
Publication number: 20210081184Abstract: A method includes analyzing a dataflow graph representing data dependencies between operators of a dataflow application to identify a plurality of candidate groups of the operators. Based on characteristics of a given hardware accelerator and the operators of a given candidate group of the plurality of candidate groups, determining whether the operators of the given candidate group are to be combined. In response to determining that the operators of the given candidate group are to be combined, retrieving executable binary code segments corresponding to the operators of the given candidate group, generating a unit of binary code including the executable binary code segments and metadata representing an execution control flow among the executable binary code segments, and dispatching the unit of code to the given hardware accelerator for execution of the unit of code.Type: ApplicationFiled: September 13, 2019Publication date: March 18, 2021Applicant: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Reza AZIMI, Kai-Ting Amy WANG, Yaoqing GAO, Ye TIAN, Xiang WANG, Cheng Xiang FENG
-
Publication number: 20200379610Abstract: An example method includes, at an electronic device with one or more processors and memory: detecting a new type of available information, the new type of available information being associated with a card for display in a content feed; in accordance with detecting the new type of available information, increasing a relevance score of the card above a display threshold; in accordance with increasing the relevance score above the display threshold: causing the card to be displayed in the content feed; and obtaining data representing user interaction with the displayed card; adjusting, based on the data representing user interaction with the displayed card, the relevance score; and modifying a display of the card in the content feed based on the adjusted relevance score.Type: ApplicationFiled: August 22, 2019Publication date: December 3, 2020Inventors: Joshua Rominski FORD, Reza AZIMI, Lucas Olen WINSTROM, Zachary James WATERSON, Terrence J. TALBOT, James D. DUSSEAU
-
Patent number: 10664278Abstract: In a distributed computing system comprising multiple processor types, a method of provisioning includes receiving a request from a client device for execution of a function. A first data structure identifies implementations of the function and compatible processor types for each implementation. A second data structure identifies available processors in the system. Compatible processor types matching available processors are candidates for execution of the function. A provisioning instruction is created for allocating resources for execution of the function.Type: GrantFiled: August 17, 2017Date of Patent: May 26, 2020Assignee: Huawei Technologies Co., Ltd.Inventors: Yuanxi Chen, Jack Hon Wai Ng, Craig Davies, Reza Azimi