We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
When we check "Use multiple DPTR registers" option in Keil uVision... Do we inform the compiler that our device support multiple DPTR so that it can use this to optimize code... or do we inform the compiler that our assembly code uses multiple DPTRs so it has to push and pop all the DPTR values to stack while jumping for code execution (i.e. ISR and stuff)....
See http://www.keil.com/support/man/docs/c51/c51_moda2.htm or whichever is appropriate to the particular derivative that you are using.
Note that only the very limited set of library functions takes any advantages of this but, as you say, the overhead on ISRs is always there...