Good for Perry, that young guy is set for life.

Cap hits will look something like:

2017: 1.3M base + 1M roster bonus + 3.7M signing bonus = 6M
2018: 1.9M base + 1M roster bonus + 3.7M signing bonus = 6.6M
2019: 5.2M base + 1M roster bonus + 3.7M signing bonus = 9.9M
2020: 9.6M base + 1M roster bonus + 3.7M signing bonus = 14.3M
2021: 9.4M base + 1M roster bonus + 3.7M signing bonus = 14.1M

This is a reasonable contract for the foreseeable future and with only 18.5 guaranteed it never becomes a hostage situation.