Many applications written in the days of single core CPU's may be multi-threaded so that they have a UI handling thread, a disk I/O thread, a compute thread, etc. This makes them more responsive. However, unless the application writer anticipated running on a system with multiple cores, they probably would not have written their application to create multiple compute threads, which is where you would see significant benefits running that application on a system with multiple CPU cores.