Is it possible to use it? I set xdebug.profiler_enable to 1 in php.ini but it hasn't done any good. My plugin code is causing CPU usage to spike over 100%, and I'd like to know why
Xdebug's Profiler is a powerful tool that gives you the ability to analyze your PHP code and determine bottlenecks or generally see which parts of your code are slow and could use a speed boost. The profiler in Xdebug 2 outputs profiling information in the form of a cachegrind compatible file.
CPU usage of 100% or server load of 100%? That's different. Your server can be doing nothing and simply get suspended (e.g. by MySQL queries). I think the Timings in PocketMine can serve the function of the Xdebug profiler already, if you use it properly, e.g. add custom timings. Or if you love hacking, you can play with threads and collect statistics about the stack trace in the main thread from other threads.
So what's the problem? Timings should reflect all the data if you use it properly. Unless you start threads wrongly.
It is possible to use it, enable it in php.ini (extension zend.xdebug or so), make sure in your bin folder theres a xdebug dll file, and in pocketmine.yml enable debugging and set level to 2. I think a php7 version of xdebug is out. Remember: xdebug causes alot cpu load etc.
I'd stop using Linux if a .dll file pops up... Any ways, I tried to find a compiled xDebug for PHP7 but ended up being too lazy to compile it myself.