\documentclass[10pt]{article}

\usepackage{fullpage}
\usepackage{setspace}
\usepackage{parskip}
\usepackage{titlesec}
\usepackage[section]{placeins}
\usepackage{xcolor}
\usepackage{breakcites}
\usepackage{lineno}
\usepackage{hyphenat}





\PassOptionsToPackage{hyphens}{url}
\usepackage[colorlinks = true,
            linkcolor = blue,
            urlcolor  = blue,
            citecolor = blue,
            anchorcolor = blue]{hyperref}
\usepackage{etoolbox}
\makeatletter
\patchcmd\@combinedblfloats{\box\@outputbox}{\unvbox\@outputbox}{}{%
  \errmessage{\noexpand\@combinedblfloats could not be patched}%
}%
\makeatother


\usepackage{natbib}




\renewenvironment{abstract}
  {{\bfseries\noindent{\abstractname}\par\nobreak}\footnotesize}
  {\bigskip}

\titlespacing{\section}{0pt}{*3}{*1}
\titlespacing{\subsection}{0pt}{*2}{*0.5}
\titlespacing{\subsubsection}{0pt}{*1.5}{0pt}


\usepackage{authblk}


\usepackage{graphicx}
\usepackage[space]{grffile}
\usepackage{latexsym}
\usepackage{textcomp}
\usepackage{longtable}
\usepackage{tabulary}
\usepackage{booktabs,array,multirow}
\usepackage{amsfonts,amsmath,amssymb}
\providecommand\citet{\cite}
\providecommand\citep{\cite}
\providecommand\citealt{\cite}
% You can conditionalize code for latexml or normal latex using this.
\newif\iflatexml\latexmlfalse
\providecommand{\tightlist}{\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}%

\AtBeginDocument{\DeclareGraphicsExtensions{.pdf,.PDF,.eps,.EPS,.png,.PNG,.tif,.TIF,.jpg,.JPG,.jpeg,.JPEG}}

\usepackage[utf8]{inputenc}
\usepackage[english]{babel}



\usepackage{float}








\begin{document}

\title{Fast computation of cloud 3D radiative effects in dynamical models by
optimizing the ecRad scheme}



\author[1]{Peter Ukkonen}%
\author[2]{Robin J Hogan}%
\affil[1]{Danish Meteorological Institute}%
\affil[2]{ECMWF}%


\vspace{-1em}



  
  \date{May 21, 2024}


\begingroup
\let\center\flushleft
\let\endcenter\endflushleft
\maketitle
\endgroup





\selectlanguage{english}
\begin{abstract}
Radiation schemes are fundamental components of weather and climate
models that need to be both efficient and accurate. In this work we
refactor ecRad, a flexible radiation scheme developed at the European
Centre for Medium-Range Weather Forecasts (ECMWF). The goal was to
improve performance especially with ecCKD, a new gas optics scheme that
requires only 32 spectral intervals in the longwave and shortwave to be
accurate. This speeds up ecRad considerably, but also reduces
performance due to short inner loops.\\
We therefore carry out both higher-level code restructuring and
kernel-level optimizations for the radiative transfer solvers
TripleClouds and SPARTACUS. SPARTACUS computes cloud 3D radiative
effects, which have so far been neglected in large-scale models. We
exploit the lack of vertical loop dependencies in key computations by
merging the spectral and vertical dimensions, improving vectorization
and instruction-level parallelism.\\
On the new AMD Rome-based ECMWF supercomputer, we obtain a 3-fold
speedup for both solvers when using 32-term ecCKD models. Combining
ecCKD with optimized code results in very fast yet accurate radiation
computations: with TripleClouds we achieve 1.7 TFLOPs and a throughput
of 621 columns/ms on a 128-core node. This is 11.5 times faster than
ecRad in Integrated Forecasting System cycle 47r3, which uses a more
noisy solver (McICA) and less accurate gas optics (RRTMG). SPARTACUS
with ecCKD is now 2.4 times faster than CY47r3-ecRad, making cloud 3D
radiative effects affordable to compute within large-scale models.
Preliminary results show that SPARTACUS slightly improves forecasts of
2-metre temperature and low clouds in the tropics.%
\end{abstract}%



\sloppy


\selectlanguage{english}
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/961701-0-figure-10918902-rtgwdp/961701-0-figure-10918902-rtgwdp}

\end{center}
\end{figure}\selectlanguage{english}
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/961701-0-figure-10918903-rtgwdp/961701-0-figure-10918903-rtgwdp}

\end{center}
\end{figure}\selectlanguage{english}
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/961701-0-figure-10918904-rtgwdp/961701-0-figure-10918904-rtgwdp}

\end{center}
\end{figure}\selectlanguage{english}
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/961701-0-figure-10918905-rtgwdp/961701-0-figure-10918905-rtgwdp}

\end{center}
\end{figure}\selectlanguage{english}
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/961701-0-figure-10918906-rtgwdp/961701-0-figure-10918906-rtgwdp}

\end{center}
\end{figure}\selectlanguage{english}
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/961701-0-figure-10918907-rtgwdp/961701-0-figure-10918907-rtgwdp}

\end{center}
\end{figure}\selectlanguage{english}
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/961701-0-figure-10924924-rtm2cr/961701-0-figure-10924924-rtm2cr}

\end{center}
\end{figure}\selectlanguage{english}
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/961701-0-figure-10924925-rtm2cr/961701-0-figure-10924925-rtm2cr}

\end{center}
\end{figure}\selectlanguage{english}
\begin{figure}[H]
\begin{center}
\includegraphics[width=0.70\columnwidth]{figures/961701-0-figure-10924926-rtm2cr/961701-0-figure-10924926-rtm2cr}

\end{center}
\end{figure}

\selectlanguage{english}
\FloatBarrier
\end{document}

