Expert programmers may be able to juggle these things for CPU-GPU interactions and dual-core set ups but I think the problems increase exponentially with core number. It may become too complex to optimize fully some problems beyond 4 cores or so but machines running software will have a better chance of being rigorous and avoiding software deadlocks and race conditions than humans.
Game platform programmers (at least the good ones) are already very adept at multicore programming. Likewise for hardcore embedded guys. The real win here is for the other 99% of the programming population.
What are the engineering and design challenges in creating successful IoT devices? These devices are usually small, resource-constrained electronics designed to sense, collect, send, and/or interpret data. Some of the devices need to be smart enough to act upon data in real time, 24/7. Specifically the guests will discuss sensors, security, and lessons from IoT deployments.