  An implementation of the electromagnetic Particle in Cell loop in the code
Smilei using task programming is presented. Through OpenMP, the macro-particles
operations are formulated in terms of tasks. This formulation allows
asynchronous execution respecting the data dependencies of the macro-particle
operations, the most time-consuming part of the code in simulations of interest
for plasma physics. Through some benchmarks it is shown that this formulation
can help mitigating the load imbalance of these operations at the OpenMP thread
level. The improvements in strong scaling for load-imbalanced physical cases
are discussed.
