In the Drupal API I find that post_max_size is divided by 2, as sanity check. It says it does it only for 4.7, but when I look at the 5.7 code that is installed at my website, it still uses the divide by 2 factor:

// sanity check- a single upload should not be more than 50% the size limit of the total post
$post_max = _file_convert_to_mb(ini_get('post_max_size')) / 2;