One common reason for making it a separate partition is to be able to mount it as nosuid
and noexec
. This prevents both privilege-escalation and arbitrary script execution from /tmp, respectively. This is particularly useful in multi-user environments (e.g. hosting) where unprivileged users will have access to read/write data to /tmp but should not be able to perform either of these actions.
Another justification would be to limit the amount of temporary data stored (since not everything cleans up after itself) to prevent other more important partitions from filling and causing service interruption and/or data loss.