produce the generated Tensor. For instance, if size is (4, 8) and steps is (1, 4), then a tensor `t` of size (4, 32) will be created and then `t[:, ::4]` will be used. (Allowing one to test Tensors with strided memory.) probability_contiguous: A number between zero and one representing the chance that the generated Tensor has a contiguous memory layout. This is achieved by randomly permuting the shape of a Tensor, calling `.contiguous()`, and then permuting back. This is applied before `steps`, which can also cause a Tensor to be non-contiguous. min_elements: The minimum number of parameters that this Tensor must have for a set of parameters to be valid. (Otherwise they are resampled.) max_elemnts: Like `min_elements`, but setting an upper bound. max_allocation_bytes: Like `max_elements`, but for the size of Tensor that must be allocated prior to slicing for `steps` (if applicable). For example, a FloatTensor with size (1024, 1024) and steps (4, 4) would have 1M elements, but would require a 64 MB allocation. dim_parameter: The length of `size` and `steps` will be truncated to this value. This allows Tensors of varying dimensions to be generated by the Fuzzer. dtype: The PyTorch dtype of the generated Tensor. cuda: Whether to place the Tensor on a GPU. tensor_constructor: Callable which will be used instead of the default Tensor construction method. This allows the author to enforce properties of the Tensor (e.g. it can only have certain values). The dtype and concrete shape of the Tensor to be created will be passed, and concrete values of all parameters will be passed as kwargs. Note that transformations to the result (permuting, slicing) will be performed by the Fuzzer; the tensor_constructor is only responsible for creating an appropriately sized Tensor. N)