The migration of code to multi-core processors is quickly becoming the biggest challenge for today’s embedded developers. System-tracing tools, when properly used, can both reduce migration efforts and maximize performance gains. This paper offers practical insight into using these tools to identify core utilization, resource contention, thread migration between cores, and more.