title: What functions or modules require contiguous input?
body: <p>As I understand, you need to call <code>tensor.contiguous()</code> explicitly whenever some function or module needs a contiguous tensor. Otherwise you get exceptions like:</p>
  <pre><code>RuntimeError: invalid argument 1: input is not contiguous at .../src/torch/lib/TH/generic/THTensor.c:231
  </code></pre>
  <p>(E.g. <a href="https://stackoverflow.com/questions/48915810/pytorch-what-does-contiguous-do">via</a>.)</p>
  <p><strong>What functions or modules require contiguous input?</strong> Is this documented?</p>
  <p>Or phrased differently, what are situations where you need to call <code>contiguous</code>?</p>
  <p>E.g. <code>Conv1d</code>, does it require contiguous input? The documentation does not mention this. When the documentation does not mention this, this would always imply that it does not require contiguous input?</p>
  <p>(I remember in Theano, any op getting some non-contiguous input, which required it to be contiguous, would just convert it automatically.)</p>