Best Practice for Oracle SGA and PGA Memory Components Size
What version of Oracle are you using?  Are you actually setting values for the SGA components and/ or the PGA separately?  If so, why?  If you're using a recent version of Oracle, the starting point would normally be to set memory_target and let Oracle size the various memory components automatically.  Unless, of course, you have some reason to need to set minimum values for certain memory components.

As for what to set memory_target to, you just need to leave enough memory for the OS and any other processes that need to run on the machine (including things like any backup manager you might be using, any monitoring software that runs on the server, etc.)  It seems unlikely to me that you'd need 20% of 128 GB for that software.  I'd guess that 8 GB would be more than enough leaving 120 GB for Oracle's memory_target.  You could do better than guessing by taking a look at the actual memory utilization on the server over time.