Patents by Inventor Ljubisa Bajic
Ljubisa Bajic 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: 12236237Abstract: Processor cores using content object identifiers for routing and computation are disclosed. One method includes executing a complex computation using a set of processing cores. The method includes routing a set of content objects using a set of content object identifiers and executing a set of instructions. The set of instructions are defined using a set of operand identifiers. The operand identifiers represent content object identifiers in the set of content object identifiers. The content objects can be routed according to a named data networking (NDN) or content-centric networking (CCN) paradigm with the content object identifiers mentioned above serving as the names for the computation data being routed by the network.Type: GrantFiled: March 31, 2023Date of Patent: February 25, 2025Assignee: Tenstorrent Inc.Inventors: Davor Capalija, Ljubisa Bajic, Jasmina Vasiljevic, Yongbum Kim
-
Patent number: 12210478Abstract: Methods and systems for executing an application data flow graph on a set of computational nodes are disclosed. The computational nodes can each include a programmable controller from a set of programmable controllers, a memory from a set of memories, a network interface unit from a set of network interface units, and an endpoint from a set of endpoints. A disclosed method comprises configuring the programmable controllers with instructions. The method also comprises independently and asynchronously executing the instructions using the set of programmable controllers in response to a set of events exchanged between the programmable controllers themselves, between the programmable controllers and the network interface units, and between the programmable controllers and the set of endpoints. The method also comprises transitioning data in the set of memories on the computational nodes in accordance with the application data flow graph and in response to the execution of the instructions.Type: GrantFiled: May 11, 2023Date of Patent: January 28, 2025Assignee: Tenstorrent Inc.Inventors: Ivan Matosevic, Davor Capalija, Jasmina Vasiljevic, Utku Aydonat, S. Alexander Chin, Djordje Maksimovic, Ljubisa Bajic
-
Publication number: 20250029671Abstract: Methods and systems which involve computer memories are disclosed herein. The methods and systems involve integrated Random Access Memory (RAM) using loops of inverters. A disclosed RAM comprises a set of loops of inverters. The loops of inverters in the set of loops of inverters are addressable using a set of corresponding addresses. The RAM further comprises a write circuit configured to write a value to a first loop of inverters when provided with a corresponding address for the first loop of inverters. The first loop of inverters is in the set of loops of inverters and the corresponding address is in the set of corresponding addresses. The RAM further comprises a read circuit configured to read the value from the first loop of inverters when provided with the corresponding address.Type: ApplicationFiled: July 11, 2024Publication date: January 23, 2025Inventor: Ljubisa Bajic
-
Publication number: 20250029669Abstract: Methods and systems which involve computer memories are disclosed herein. A disclosed multibit read only memory (ROM) includes a plurality of voltage generators for generating a plurality of voltages and a transistor having a first node and a second node. The transistor can be a field effect transistor (FET) and the first node can be a gate node and the second node can be a source or drain node. The ROM includes a connection from the first node to a first supply voltage node which is biased by one of the voltages in the plurality of voltages. The ROM includes a connection from the second node to a second supply voltage node which is biased by one of the voltages in the plurality of voltages. The value of a multibit ROM cell in the multibit ROM is stored as a resulting conductivity state of the transistor.Type: ApplicationFiled: July 18, 2024Publication date: January 23, 2025Inventors: Ljubisa Bajic, Lejla Bajic, Dragoljub Ignjatovic
-
Publication number: 20250028935Abstract: Methods and systems which involve computer memories are disclosed herein. A memory in accordance with this disclosure can be a multi-value memory in which each storage element of the memory can store multiple values as opposed to a standard binary storage element. The memory can include a decoder neural network and an encoder neural network to denoise the values in the memory. Various approaches disclosed herein overcome design constraints that would otherwise limit the density of such a memory.Type: ApplicationFiled: July 17, 2024Publication date: January 23, 2025Inventor: Ljubisa Bajic
-
Publication number: 20240345840Abstract: A processing core for the efficient execution of a directed graph is disclosed. The processing core includes a memory and a first and a second data tile stored in the memory. The first and second data tiles include a first and a second set of data elements stored contiguously in the memory. The processing core also includes metadata relationally stored with the first data tile in the memory. The processing core also includes an execution engine, a control unit, and an instruction. Execution of the instruction uses the execution engine, a first data element in the first set of data elements, and a second data element in the second set of data elements. The control unit conditions execution of the instruction using the metadata. A standard execution of the instruction generates a standard output. A conditional execution of the instruction operation generates a conditionally executed output.Type: ApplicationFiled: June 27, 2024Publication date: October 17, 2024Inventors: Ljubisa Bajic, Milos Trajkovic, Ivan Hamer
-
Patent number: 12118060Abstract: Methods and systems relating to computational circuitry are disclosed herein. A disclosed computational circuit includes a math circuit, a first accumulator, and a second accumulator. The first accumulator has a first memory. The second accumulator has a second memory. The first accumulator is communicatively connected to the math circuit and accumulates values from the math circuit in the first memory. The second accumulator is communicatively connected to the first memory and accumulates values from the first memory in the second memory. The first memory is faster and smaller than the second memory.Type: GrantFiled: December 8, 2021Date of Patent: October 15, 2024Assignee: Tenstorrent Inc.Inventors: Davor Capalija, Ljubisa Bajic, Alex Cejkov
-
Publication number: 20240338176Abstract: Processing cores with data associative adaptive rounding and associated methods are disclosed herein. One disclosed processing core comprises an arithmetic logic unit cluster configured to generate a value for a unit of directed graph data using input directed graph data, a comparator coupled to a threshold register and a data register, a core controller configured to load a threshold value into the threshold register when the value for the unit of directed graph data is loaded into the data register, and a rounding circuit. The rounding circuit is configured to receive the value for the unit of directed graph data from the arithmetic logic unit cluster and conditionally round the value for the unit of directed graph data based on a comparator output from the comparator.Type: ApplicationFiled: June 18, 2024Publication date: October 10, 2024Inventors: Ljubisa Bajic, Alex Cejkov, Lejla Bajic
-
Publication number: 20240319996Abstract: Methods and systems related to parallel computing using heterogeneous networks of computational nodes are disclosed herein. A method for executing a complex computation on a heterogeneous set of computational nodes linked together by a set of links in a network is disclosed. The method includes compiling, using a table of bandwidth values for the set of links in the network, a set of instructions for routing data for the execution of the complex computation. The method also includes configuring a set of programmable controllers on the heterogeneous set of computational nodes with the set of instructions. The method also includes executing the set of instructions using the set of programmable controllers. The method also includes routing data through the network to facilitate the execution of the complex computation by the heterogeneous set of computational nodes and in response to the execution of the instructions.Type: ApplicationFiled: March 19, 2024Publication date: September 26, 2024Inventors: Jasmina Vasiljevic, Ljubisa Bajic, Davor Capalija, Stanislav Sokorac
-
Patent number: 12050913Abstract: A processing core for the efficient execution of a directed graph is disclosed. The processing core includes a memory and a first and a second data tile stored in the memory. The first and second data tiles include a first and a second set of data elements stored contiguously in the memory. The processing core also includes metadata relationally stored with the first data tile in the memory. The processing core also includes an execution engine, a control unit, and an instruction. Execution of the instruction uses the execution engine, a first data element in the first set of data elements, and a second data element in the second set of data elements. The control unit conditions execution of the instruction using the metadata. A standard execution of the instruction generates a standard output. A conditional execution of the instruction operation generates a conditionally executed output.Type: GrantFiled: October 26, 2020Date of Patent: July 30, 2024Assignee: Tenstorrent Inc.Inventors: Ljubisa Bajic, Milos Trajkovic, Ivan Hamer
-
Patent number: 12039289Abstract: Processing cores with data associative adaptive rounding and associated methods are disclosed herein. One disclosed processing core comprises an arithmetic logic unit cluster configured to generate a value for a unit of directed graph data using input directed graph data, a comparator coupled to a threshold register and a data register, a core controller configured to load a threshold value into the threshold register when the value for the unit of directed graph data is loaded into the data register, and a rounding circuit. The rounding circuit is configured to receive the value for the unit of directed graph data from the arithmetic logic unit cluster and conditionally round the value for the unit of directed graph data based on a comparator output from the comparator.Type: GrantFiled: April 10, 2023Date of Patent: July 16, 2024Assignee: Tenstorrent Inc.Inventors: Ljubisa Bajic, Alex Cejkov, Lejla Bajic
-
Patent number: 12019546Abstract: Methods and systems associated with caches are disclosed. One disclosed system includes at least one memory storing at least two data structures. The at least two data structures include a first data structure and a second data structure. The system also includes at least two caches with a first cache which caches the first data structure and a second cache which caches the second data structure. The system also includes a controller communicatively coupled to the at least two caches. The controller separately configures the first cache based on the first data structure and the second cache based on the second data structure. The system also comprises at least one processor communicatively coupled to the at least two caches. The processor accesses each of the at least two data structures using the at least two caches and during the execution of a complex computation.Type: GrantFiled: November 7, 2022Date of Patent: June 25, 2024Assignee: Tenstorrent Inc.Inventors: Ljubisa Bajic, Davor Capalija, Ivan Matosevic, Alex Cejkov
-
Patent number: 11960885Abstract: Methods and systems related to parallel computing using heterogeneous networks of computational nodes are disclosed herein. A method for executing a complex computation on a heterogeneous set of computational nodes linked together by a set of links in a network is disclosed. The method includes compiling, using a table of bandwidth values for the set of links in the network, a set of instructions for routing data for the execution of the complex computation. The method also includes configuring a set of programmable controllers on the heterogeneous set of computational nodes with the set of instructions. The method also includes executing the set of instructions using the set of programmable controllers. The method also includes routing data through the network to facilitate the execution of the complex computation by the heterogeneous set of computational nodes and in response to the execution of the instructions.Type: GrantFiled: April 11, 2022Date of Patent: April 16, 2024Assignee: Tenstorrent Inc.Inventors: Jasmina Vasiljevic, Ljubisa Bajic, Davor Capalija, Stanislav Sokorac
-
Publication number: 20240111525Abstract: Methods and systems relating to computational hardware are disclosed herein. One disclosed method for executing a multiplication computation using a computational hardware block includes storing a first operand and a second operand for the multiplication computation. The first operand includes a first set of bit strings. The second operand includes a second set of bit strings. The method also includes multiplying the first set of bit strings and the second set of bit strings in a set of temporal phases using the computational hardware block. Each temporal phase uses a different group of bit strings from the first set of bit strings and the second set of bit strings. A cardinality of the set of temporal phases is determined by a fidelity control value. The fidelity control value adaptively sets a fidelity of execution of the multiplication computation.Type: ApplicationFiled: September 29, 2022Publication date: April 4, 2024Inventors: Ljubisa Bajic, Milos Trajkovic, Syed Gilani
-
Patent number: 11936382Abstract: An output clock frequency of an adaptive oscillator circuit changes in response to noise on an integrated circuit power supply line. The circuit features two identical delay lines which are separately connected to a regulated supply and a droopy supply. In response to noise on the droopy supply, the delay lines cause a change in the output clock frequency. The adaptive oscillator circuit slows down the output clock frequency when the droopy supply droops or falls below the regulated supply. The adaptive oscillator circuit clamps the output clock frequency at a level determined by the regulated supply when the droopy supply overshoots or swings above the regulated supply.Type: GrantFiled: June 27, 2019Date of Patent: March 19, 2024Assignees: Advanced Micro Devices, Inc., ATI TECHNOLOGIES ULCInventors: Joyce Cheuk Wai Wong, Dragoljub Ignjatovic, Mikhail Rodionov, Ljubisa Bajic, Stephen V. Kosonocky, Steven J. Kommrusch
-
Patent number: 11934897Abstract: Methods and systems for executing an application data flow graph using a network of computational nodes are disclosed. In specific examples, the network of computational nodes can be a network-on-chip for a multicore processor. One method includes transitioning first application data from a first source computational node to an intermediary computational node. The method can also include providing second application data, from a computation layer of the network of computational nodes, on the intermediary computational node. The method can also include multicasting the first application data in combination with the second application data from the intermediary computational node to at least two destination computational nodes. The first source computational node, the intermediary computational node, and the at least two destination computational nodes are all in the network of computational nodes.Type: GrantFiled: January 29, 2021Date of Patent: March 19, 2024Assignee: Tenstorrent Inc.Inventors: Jasmina Vasiljevic, Davor Capalija, Zahi Moudallal, Utku Aydonat, Joseph Chu, S. Alexander Chin, Ljubisa Bajic
-
Patent number: 11829752Abstract: Processor cores using packet identifiers for routing and computation are disclosed. One method includes executing a complex computation using a set of processing cores. The method includes routing a set of packets using a set of packet identifiers and executing a set of instructions. The set of instructions are defined using a set of operand identifiers. The operand identifiers represent packet identifiers in the set of packet identifiers. In specific implementations the set of the operand identifiers represent packet identifiers in the set of packet identifiers in that a set of memories on the set of processing cores stores data values in common association with both the set of packets, and a set of operands identified by the set of operand identifiers. In specific implementations the set of operand identifiers and packet identifiers are unambiguously mapped to an underlying set of application datums of the complex computation.Type: GrantFiled: March 3, 2022Date of Patent: November 28, 2023Assignee: Tenstorrent Inc.Inventors: Davor Capalija, Ljubisa Bajic, Jasmina Vasiljevic
-
Publication number: 20230325160Abstract: Methods and systems relating to the field of parallel computing are disclosed herein. The methods and systems disclosed include approaches for sparsity uniformity enforcement for a set of computational nodes which are used to execute a complex computation. A disclosed method includes determining a sparsity distribution in a set of operand data, and generating, using a compiler, a set of instructions for executing, using the set of operand data and a set of processing cores, a complex computation. Alternatively, the method includes altering the operand data. The method also includes distributing the set of operand data to the set of processing cores for use in executing the complex computation in accordance with the set of instructions. Either the altering is conducted to, or the compiler is programmed to, balance the sparsity distribution among the set of processing cores.Type: ApplicationFiled: May 25, 2023Publication date: October 12, 2023Inventors: Ljubisa Bajic, Davor Capalija, Yu Ting Chen, Andrew Grebenisan, Hassan Farooq, Akhmed Rakhmati, Stephen Chin, Vladimir Blagojevic, Almeet Bhullar, Jasmina Vasiljevic
-
Publication number: 20230325183Abstract: Methods and systems related to parallel computing using heterogenous networks of computational nodes are disclosed herein. A method for executing a complex computation on a heterogenous set of computational nodes linked together by a set of links in a network is disclosed. The method includes compiling, using a table of bandwidth values for the set of links in the network, a set of instructions for routing data for the execution of the complex computation. The method also includes configuring a set of programmable controllers on the heterogenous set of computational nodes with the set of instructions. The method also includes executing the set of instructions using the set of programmable controllers. The method also includes routing data through the network, to facilitate the execution of the complex computation by the heterogenous set of computational nodes, and in response to the execution of the instructions.Type: ApplicationFiled: April 11, 2022Publication date: October 12, 2023Applicant: Tenstorrent Inc.Inventors: Jasmina Vasiljevic, Ljubisa Bajic, Davor Capalija, Stanislav Sokorac
-
Publication number: 20230281155Abstract: Methods and systems for executing an application data flow graph on a set of computational nodes are disclosed. The computational nodes can each include a programmable controller from a set of programmable controllers, a memory from a set of memories, a network interface unit from a set of network interface units, and an endpoint from a set of endpoints. A disclosed method comprises configuring the programmable controllers with instructions. The method also comprises independently and asynchronously executing the instructions using the set of programmable controllers in response to a set of events exchanged between the programmable controllers themselves, between the programmable controllers and the network interface units, and between the programmable controllers and the set of endpoints. The method also comprises transitioning data in the set of memories on the computational nodes in accordance with the application data flow graph and in response to the execution of the instructions.Type: ApplicationFiled: May 11, 2023Publication date: September 7, 2023Applicant: Tenstorrent Inc.Inventors: Ivan Matosevic, Davor Capalija, Jasmina Vasiljevic, Utku Aydonat, S. Alexander Chin, Djordje Maksimovic, Ljubisa Bajic