One of the most time-consuming parts of atmospheric chemistry models is the solving of chemical processes. Decades of progress in the identification of increasingly complex atmospherically relevant mixed-phase physiochemical processes have resulted in increasingly complex chemistry systems. In this contribution, we discuss novel solutions to speed-up the numerical solving of such complex chemistry systems within a state-of-the-art atmospheric chemistry model. We use the Multiscale Online Nonhydrostatic AtmospheRe CHemistry model (MONARCH), a chemical weather prediction system developed by the Barcelona Supercomputing Center. The model implements a new flexible treatment for gas- and aerosol-phase chemical processes, Chemistry Across Multiple Phases (CAMP), that allows multiple chemical processes (e.g., gas- and aerosol-phase chemical reactions, emissions, deposition, photolysis, and mass-transfer) to be solved simultaneously as a single system. A computational profiling analysis showed that chemistry-related components of MONARCH are computationally expensive. The chemistry-related functions are consuming 48.6 to 83% of the execution time depending on the chemical complexity. We adapted CAMP to allow us to solve chemical processes simultaneously for multiple grid cells in a given spatial region as a single system, as opposed to the common practice of looping through individual grid cells. This solution avoids repeating initialization steps, memory misses, solver iterations and allows further vectorization during solving. Our adaptation only requires a single solver call per chemistry time-step, allowing the solver to compute internally the chemistry for all grid cells and achieves a factor of 12 time-speedup for the configuration tested. Furthermore, we have started to port some of the most time-consuming functions to GPUs, splitting chemical reaction computation amongst individual threads. The selected function represents 30% of the chemistry computation time. Preliminary GPU results of such functions show a speedup of x12. Results of the new implementation of CAMP for GPUs integrated into MONARCH will be discussed. The performance of the optimized code will be compared with state-of-the-art chemistry solvers commonly used in the Earth. Sciences community (e.g., EBI solver, KPP). Finally, more GPU improvement will be explored using heterogeneous computation approaches for CPU/GPU execution. We aim for full simultaneous usage of the CPU and GPU resources, and the hiding of data movement times between host and device.