Warp-collective instructions to accelerate cryptographic primitives
AssigneeNVIDIA Corporation
InventorsMichael B Sullivan, Santosh Ghosh, Daniel Robert Johnson, Gookwon Suh, Cherin Joseph, Ming Yiu Siu
Life of this patent
Estimating the term…
Abstract
Mechanisms for the generation of randomized sequences of substantial length the generation of which involves the frequent exchange of long bit sequences between threads in a multiprocessor. The mechanisms accelerate in hardware the swapping of long sequences between threads that in conventional systems slows the generation of the sequences down and increases the power consumption needed to generate the sequences.
Claims20
A system comprising:
- one or more data processors;
- a hardware acceleration unit;
- a random number generator configured with a cryptographic primitive that, when executed by the one or more processors, operates the hardware acceleration unit to perform at least one ChaCha round.
A system comprising:
- one or more data processors;
- a hardware acceleration unit;
- a random number generator configured with a cryptographic primitive that, when executed by the one or more processors, operates the hardware acceleration unit to perform at least one Keccak round.
A process for configuring a neural network structure, the process comprising:
- invoking a random number generator from multiple software threads executing in parallel, the random number generator invoked from each thread by way of a software cryptographic primitive that, when executed by the one or more data processors, operates the hardware acceleration unit to perform at least one ChaCha round;
- and
- merging, in the multiple threads, results returned by the cryptographic primitive into a cryptographically insecure value;
- and
- applying the cryptographically insecure value to set a dropout rate for a neural network.
A process for configuring a neural network structure, the process comprising:
- invoking a random number generator from multiple software threads executing in parallel, the random number generator invoked from each thread by way of a software cryptographic primitive that, when executed by the one or more data processors, operates the hardware acceleration unit to perform at least one Keccak round;
- and
- merging, in the multiple threads, results returned by the cryptographic primitive into a cryptographically insecure value;
- and
- applying the cryptographically insecure value to set a dropout rate for a neural network.
Dependencies are inferred from the claim text.