75% of RAM for Innodb_buffer_pool size
Total, but remember that is only a rule of thumb. Use common sense when setting the value. InnoDB does like as much memory as possible, but there are a couple things to consider:

1) Make sure there is enough RAM left over for everything else that needs to run on the server

2) Remember that the point of the InnoDB buffer pool is to handle the normal working set of your data.  How large is your database total, including some growth factor?  There's no real need to set the buffer pool much more than that, even if you have the RAM.  But your working set of data (what is used in day-to-day activities) is often lower than the total size of the DB.  How much does it really need to keep in RAM for best performance?