Hi there!
Took me some time to learn about Mixed Precision. I ended up using the module AMP from the Apex library to do it, and now my model can be train using the RTX 2070 GPU, but I still have some issues trying with the GTX 1050, which shows an error about isuficient memory.
Basicly what i did was load my model to the GPU with the .half() extension at the end of the code to set it up to FP16:
model = ConvNet().cuda().half()

Then i added this next code to the part of my training process, in which it is calculate the loss and is optimize:
Before:
loss_size = loss(outputs, labels)
loss_size.backward()
optimizer.step()

After:
loss_size = loss(outputs, labels)
with amp_handle.scale_loss(loss_size, optimizer) as scaled_loss:
    scaled_loss.backward()
optimizer.step()

By applying all this changes i was able to train my ConvNet model setting 5 epochs in the process and the batch size of the training data to 8. This taked about 50 min (10 min per epoch).
The performance of my model was bad and now i will start checking diferents ways to make it better.
The doubts that i have now are:
Could this Mixed Precision process affect the performance of my model?
And in that case, how can it be fix without increasing the memory usage of the GPU?
Are there any other considerations or ways to increase the performance in the training process? I choosed the Apex library, but im sure that exist others ways to do so.
The information about Mixed Precisions process for Pythorch using the Apex library is available in this NVIDIA post Link 2.
Thanks you all for the answers! I would like to keep going deeper into this subject and find news and betters ways to upgrade the performance of training process.