You have two possibilities: the first is to pass the original
option
\documentclass[a5paper]{book}
\usepackage[pass]{geometry}
\usepackage[original]{imakeidx}
\makeindex
\begin{document}
foo\index{a}. foo\index{b}. foo\index{c}. foo\index{d}. foo\index{e}. foo\index{f}.
foo\index{g}. foo\index{h}. foo\index{i}. foo\index{j}. foo\index{k}. foo\index{l}.
foo\index{m}. foo\index{ab}. foo\index{ac}. foo\index{asd}. foo\index{asddf}. foo\index{aasef}.
\printindex
\end{document}
Only two-column format is supported. I used A5 paper just to show the result more clearly:

The second strategy is to pass multicols*
instead of multicols
:
\documentclass[a5paper]{book}
\usepackage[pass]{geometry}
\usepackage{imakeidx}
\makeindex[columns=2]
\xpatchcmd{\theindex}{multicols}{multicols*}{}{}
\xpatchcmd{\endtheindex}{multicols}{multicols*}{}{}
\begin{document}
foo\index{a}. foo\index{b}. foo\index{c}. foo\index{d}. foo\index{e}. foo\index{f}.
foo\index{g}. foo\index{h}. foo\index{i}. foo\index{j}. foo\index{k}. foo\index{l}.
foo\index{m}. foo\index{ab}. foo\index{ac}. foo\index{asd}. foo\index{asddf}. foo\index{aasef}.
\printindex
\end{document}
This has the advantage that all features of imakeidx
are available.