白丝美女被狂躁免费视频网站,500av导航大全精品,yw.193.cnc爆乳尤物未满,97se亚洲综合色区,аⅴ天堂中文在线网官网

Synchronization of concurrent computation engines

專(zhuān)利號(hào)
US11175919B1
公開(kāi)日期
2021-11-16
申請(qǐng)人
Amazon Technologies, Inc.(US WA Seattle)
發(fā)明人
Ilya Minkin; Ron Diamant; Drazen Borkovic; Jindrich Zejda; Dana Michelle Vantrease
IPC分類(lèi)
G06F9/30; G06F9/35; G06F13/28; G06F9/38; G06F9/52; G06N3/06
技術(shù)領(lǐng)域
checkpoint,engine,execution,register,ckpt1,engines,in,wait,value,can
地域: WA WA Seattle

摘要

Integrated circuit devices and methods for synchronizing execution of program code for multiple concurrently operating execution engines of the integrated circuit devices are provided. In some cases, one execution engine of an integrated circuit device may be dependent on the operation of another execution engine of the integrated circuit device. To synchronize the execution engines around the dependency, a first execution engine may execute an instruction to set a value in a register while a second execution engine may execute an instruction to wait for a condition associated with the register value.

說(shuō)明書(shū)

In various examples, the activation engine 516 can include multiple separate execution channels. In these examples, the execution channels can correspond to the columns of the processing engine array 510, and can perform an operation on the outputs of a column, the result of which can be stored in the memory subsystem 504. In these examples, the activation engine 516 may be able to perform between 1 and n parallel computations, where n is equal to the number of columns in the processing engine array 510. In some cases, one or more of the computations can be performed simultaneously. Examples of computations that each execution channel can perform include exponentials, squares, square roots, identities, binary steps, bipolar steps, sigmoidals, and ramps, among other examples.

In some implementations, the accelerator engine 502 can include a pooling engine 518. Pooling is the combining of outputs of the columns of the processing engine array 510. Combining can include for example, computing a maximum value, a minimum value, an average value, a median value, a summation, a multiplication, or another logical or mathematical combination. In various examples, the pooling engine 518 can include multiple execution channels that can operating on values from corresponding columns of the processing engine array 510. In these examples, the pooling engine 518 may be able to perform between 1 and n parallel computations, where n is equal to the number of columns in the processing engine array 510. In various examples, execution channels of the pooling engine 518 can operate in parallel and/or simultaneously. In some examples, the pooling engine 518 can be bypassed.

權(quán)利要求

1
微信群二維碼
意見(jiàn)反饋