Instruction for performing a pseudorandom number generate operation
First Claim
1. A computer program product for executing a machine instruction, the computer program product comprising:
- a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising;
obtaining, by a processor, a machine instruction for execution, the machine instruction being defined for computer execution according to a computer architecture, the machine instruction comprising;
an opcode field to provide an opcode, the opcode to identify a perform pseudorandom number operation; and
a register field to be used to identify a register, the register to specify a location in memory of a first operand to be used by the machine instruction; and
executing the machine instruction, the executing comprising;
obtaining a modifier (M) field associated with the machine instruction;
based on the M field having a first value, performing a deterministic pseudorandom number generate operation, the deterministic pseudorandom number generate operation comprising;
for each block of memory of one or more blocks of memory of the first operand, generating a hash value using a 512 bit secure hash technique and at least one seed value of a parameter block of the machine instruction; and
storing at least a portion of the generated hash value in a corresponding block of memory of the first operand, the generated hash value being at least a portion of a pseudorandom number.
1 Assignment
0 Petitions
Accused Products
Abstract
A machine instruction is provided that includes an opcode field to provide an opcode, the opcode to identify a perform pseudorandom number operation, and a register field to be used to identify a register, the register to specify a location in memory of a first operand to be used. The machine instruction is executed, and execution includes for each block of memory of one or more blocks of memory of the first operand, generating a hash value using a 512 bit secure hash technique and at least one seed value of a parameter block of the machine instruction; and storing at least a portion of the generated hash value in a corresponding block of memory of the first operand, the generated hash value being at least a portion of a pseudorandom number.
-
Citations
20 Claims
-
1. A computer program product for executing a machine instruction, the computer program product comprising:
-
a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising; obtaining, by a processor, a machine instruction for execution, the machine instruction being defined for computer execution according to a computer architecture, the machine instruction comprising; an opcode field to provide an opcode, the opcode to identify a perform pseudorandom number operation; and a register field to be used to identify a register, the register to specify a location in memory of a first operand to be used by the machine instruction; and executing the machine instruction, the executing comprising; obtaining a modifier (M) field associated with the machine instruction; based on the M field having a first value, performing a deterministic pseudorandom number generate operation, the deterministic pseudorandom number generate operation comprising; for each block of memory of one or more blocks of memory of the first operand, generating a hash value using a 512 bit secure hash technique and at least one seed value of a parameter block of the machine instruction; and storing at least a portion of the generated hash value in a corresponding block of memory of the first operand, the generated hash value being at least a portion of a pseudorandom number. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer system for executing a machine instruction, the computer system comprising:
-
a memory; and a processor in communications with the memory, wherein the computer system is configured to perform a method, said method comprising; obtaining, by a processor, a machine instruction for execution, the machine instruction being defined for computer execution according to a computer architecture, the machine instruction comprising; an opcode field to provide an opcode, the opcode to identify a perform pseudorandom number operation; and a register field to be used to identify a register, the register to specify a location in memory of a first operand to be used by the machine instruction; and executing the machine instruction, the executing comprising; obtaining a modifier (M) field associated with the machine instruction; based on the M field having a first value, performing a deterministic pseudorandom number generate operation, the deterministic pseudorandom number generate operation comprising; for each block of memory of one or more blocks of memory of the first operand, generating a hash value using a 512 bit secure hash technique and at least one seed value of a parameter block of the machine instruction; and storing at least a portion of the generated hash value in a corresponding block of memory of the first operand, the generated hash value being at least a portion of a pseudorandom number. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A method of executing a machine instruction, the method comprising:
-
obtaining, by a processor, a machine instruction for execution, the machine instruction being defined for computer execution according to a computer architecture, the machine instruction comprising; an opcode field to provide an opcode, the opcode to identify a perform pseudorandom number operation; and a register field to be used to identify a register, the register to specify a location in memory of a first operand to be used by the machine instruction; and executing the machine instruction, the executing comprising; obtaining a modifier (M) field associated with the machine instruction; based on the M field having a first value, performing a deterministic pseudorandom number generate operation, the deterministic pseudorandom number generate operation comprising; for each block of memory of one or more blocks of memory of the first operand, generating a hash value using a 512 bit secure hash technique and at least one seed value of a parameter block of the machine instruction; and storing at least a portion of the generated hash value in a corresponding block of memory of the first operand, the generated hash value being at least a portion of a pseudorandom number. - View Dependent Claims (19, 20)
-
Specification