In our case we saw what you are seeing, no indication that the resources are being being taxed at all. I suspect our problem was based in the virtualisation setup, not the windows setup. However as you say, if performance is normal when run from the console this isn't your issue. Perhaps it would be wise to profile your program running from both the command line, and as a service. Comparing the output should narrow down where the performance bottle neck is occuring. See Devel::NYTProf. IIRC Windows has an optimisation setting, which allows you to choose 'Programs' or 'Background Services'. This may also be worth investigating. 'System properties' -> 'Advanced'->'Performance'.