Resource-aware scheduling for 2D/3D multi-/many-core processor-memory systems