IP Library › Granted Patent US 10,782,726
Granted Patent B2
US 10,782,726 · App. 16/373,519 · Granted Sep 22, 2020

Optimizing core utilization in neurosynaptic systems

Inventors: Arnon Amir (Saratoga, CA); Pallab Datta (San Jose, CA); Nimrod Megiddo (Palo Alto, CA); Dharmendra S. Modha (San Jose, CA)
Assignee: International Business Machines Corporation
G06E1/00G06N3/049G06N3/063G06E3/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,782,726
App. No.
16/373,519
Granted
Sep 22, 2020
Kind
B2
Abstract

In one embodiment, a computer program product for optimizing core utilization in a neurosynaptic network includes a computer readable storage medium having program instructions embodied therewith, where the computer readable storage medium is not a transitory signal per se, and where the program instructions are executable by a processor to cause the processor to perform a method including identifying, by the processor, one or more unused portions of a neurosynaptic network, and for each of the one or more unused portions of the neurosynaptic network, disconnecting, by the processor, the unused portion from the neurosynaptic network.

Claims (37)

1. A computer program product for optimizing core utilization in a neurosynaptic network, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to cause the processor to perform a method comprising:

identifying, by the processor, one or more unused portions of a neurosynaptic network; and

for each of the one or more unused portions of the neurosynaptic network, disconnecting, by the processor, the unused portion from the neurosynaptic network.

2. The computer program product of claim 1 , wherein each of the one or more unused portions comprises one of an unused neuron and an unused axon.

3. The computer program product of claim 2 , wherein an unused neuron comprises a neuron that cannot affect an output of the neurosynaptic network, and an unused axon comprises an axon that cannot affect the output of the neurosynaptic network.

4. The computer program product of claim 2 , wherein identifying the one or more unused portions of the neurosynaptic network includes:

scanning the neurosynaptic network to identify the unused neurons and the unused axons; and

adding the identified unused neurons and the identified unused axons to a queue.

5. The computer program product of claim 4 , wherein, for each unused portion in the queue, disconnecting the unused portion from the neurosynaptic network includes disconnecting the unused portion from at least one of a source, a destination, a connection, and a crossbar.

6. The computer program product of claim 2 , further comprising, after disconnecting each of the one or more unused portions from the neuro synaptic network:

identifying, by the processor, one or more additional unused portions of the neurosynaptic network; and

for each of the one or more additional unused portions of the neurosynaptic network, disconnecting, by the processor, the additional unused portion from the neurosynaptic network.

7. A system, comprising:

a processor; and

logic integrated with the processor, executable by the processor, or integrated with and executable by the processor, the logic being configured to:

identify one or more unused portions of a neurosynaptic network; and

for each of the one or more unused portions of the neurosynaptic network,

disconnect the unused portion from the neurosynaptic network.

8. The system of claim 7 , wherein each of the one or more unused portions comprises one of an unused neuron and an unused axon.

9. The system of claim 8 , wherein an unused neuron comprises a neuron that cannot affect an output of the neurosynaptic network, and an unused axon comprises an axon that cannot affect the output of the neurosynaptic network.

10. The system of claim 8 , wherein identifying the one or more unused portions of the neurosynaptic network includes:

scanning the neurosynaptic network to identify the unused neurons and the unused axons; and

adding the identified unused neurons and the identified unused axons to a queue.

11. The system of claim 10 , wherein, for each unused portion in the queue, disconnecting the unused portion from the neurosynaptic network includes disconnecting the unused portion from at least one of a source, a destination, a connection, and a crossbar.

12. The system of claim 8 , where the logic is further configured to, after disconnecting each of the one or more unused portions from the neuro synaptic network:

identify one or more additional unused portions of the neurosynaptic network; and for each of the one or more additional unused portions of the neurosynaptic network, disconnect the additional unused portion from the neurosynaptic network.

13. A computer program product for optimizing core utilization in a neurosynaptic network, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to cause the processor to perform a method comprising:

identifying, by the processor, independent blocks of a first plurality of cores of a neurosynaptic network; and

reconfiguring, by the processor, the independent blocks onto the first plurality of cores by calculating a new mapping for at least one of the independent blocks, and

moving, by the processor, the at least one of the independent blocks to a new location on a different core of the first plurality of cores of the neurosynaptic network in accordance with the new mapping.

14. The computer program product of claim 13 , further comprising updating block-to-block connectivity for each of the at least one of the independent blocks moved to a new location.

15. The computer program product of claim 13 , wherein the neurosynaptic network further comprises a second plurality of cores, wherein all cores of the first plurality of cores have a same first property, and all cores of the second plurality of cores have a same second property, wherein the first property is different than the second property.

16. The computer program product of claim 15 , wherein the first property includes a first time scale, and the second property includes a second time scale.

17. The computer program product of claim 13 , wherein identifying the independent blocks of the first plurality of cores includes identifying only moveable independent blocks of the first plurality of cores, such that unmovable independent blocks of the first plurality of cores are not reconfigured.

18. The computer program product of claim 13 , wherein the first plurality of cores includes cores of different sizes.

19. The computer program product of claim 18 , wherein a cost function is utilized for reconfiguring the independent blocks onto the first plurality of cores.

20. The computer program product of claim 19 , wherein the cost function is minimized.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2019
From: AMIR, ARNON; DATTA, PALLAB; MEGIDDO, NIMROD; MODHA, DHARMENDRA S.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 049988/0142 →
Continuity (2)
Continuation 14871680 · Sep 30, 2015
Related Publication 20190227589A1 · Jul 25, 2019