You won’t save any memory if you prefer one approach to the other. While the latter might give you more flexibility in creating the model, both will yield the same result and use the same amount of memory in case you have a simple sequential architecture.
Have a look at torch.utils.checkpoint 3 to add checkpointing to your model and save some memory.