Instruction for performing a pseudorandom number seed 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 having associated therewith;
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 an operand to be used by the machine instruction; and
executing the machine instruction, the executing comprising;
obtaining a modifier indicator from a register associated with the machine instruction;
based on the modifier indicator having a first value, performing a deterministic pseudorandom number seed operation, the deterministic pseudorandom number seed operation comprising;
obtaining seed material based on information included in the operand, the obtaining including forming the seed materialbased, in part, on a value of a reseed counter of a parameter block associated with the machine instruction;
using a selected hash technique and the seed material to provide one or more seed values; and
storing the one or more seed values in the parameter block associated with the machine instruction.
1 Assignment
0 Petitions
Accused Products
Abstract
A machine instruction is provided that has associated therewith an opcode to identify a perform pseudorandom number operation, and an operand to be used by the machine instruction. The machine instruction is executed, and execution includes obtaining a modifier indicator. Based on the modifier indicator having a first value, performing a deterministic pseudorandom number seed operation, which includes obtaining seed material based on information stored in the second operand. A selected hash technique and the seed material are used to provide one or more seed values, and the one or more seed values are stored in a parameter block.
70 Citations
19 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 having associated therewith; 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 an operand to be used by the machine instruction; and executing the machine instruction, the executing comprising; obtaining a modifier indicator from a register associated with the machine instruction; based on the modifier indicator having a first value, performing a deterministic pseudorandom number seed operation, the deterministic pseudorandom number seed operation comprising; obtaining seed material based on information included in the operand, the obtaining including forming the seed material based, in part, on a value of a reseed counter of a parameter block associated with the machine instruction; using a selected hash technique and the seed material to provide one or more seed values; and storing the one or more seed values in the parameter block associated with the machine instruction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
12. A computer system for executing a machine instruction, the computer system comprising:
-
a memory; and a processor in communication with the memory, wherein the computer system is configured to perform a method, said method comprising; obtaining a machine instruction for execution, the machine instruction being defined for computer execution according to a computer architecture, the machine instruction having associated therewith; 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 an operand to be used by the machine instruction; and executing the machine instruction, the executing comprising; obtaining a modifier indicator; based on the modifier indicator having a first value, performing a deterministic pseudorandom number seed operation, the deterministic pseudorandom number seed operation comprising; obtaining seed material based on information included in the operand, the obtaining including forming the seed material based, in part, on a value of a reseed counter of a parameter block associated with the machine instruction; using a selected hash technique and the seed material to provide one or more seed values; and storing the one or more seed values in the parameter block associated with the machine instruction. - View Dependent Claims (13, 14, 15)
-
-
16. A computer-implemented method of executing a machine instruction, the computer-implemented 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 having associated therewith; 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 an operand to be used by the machine instruction; and executing the machine instruction, the executing comprising; obtaining a modifier indicator; based on the modifier indicator having a first value, performing a deterministic pseudorandom number seed operation, the deterministic pseudorandom number seed operation comprising; obtaining seed material based on information included in the operand, the obtaining including forming the seed material based, in part, on a value of a reseed counter of a parameter block associated with the machine instruction; using a selected hash technique and the seed material to provide one or more seed values; and storing the one or more seed values in the parameter block associated with the machine instruction. - View Dependent Claims (17, 18, 19)
-
Specification