  The Liquid Argon Time Projection Chamber (LArTPC) technology plays an
essential role in many current and future neutrino experiments. Accurate and
fast simulation is critical to developing efficient analysis algorithms and
precise physics model projections. The speed of simulation becomes more
important as Deep Learning algorithms are getting more widely used in LArTPC
analysis and their training requires a large simulated dataset. Heterogeneous
computing is an efficient way to delegate computing-heavy tasks to specialized
hardware. However, as the landscape of the compute accelerators is evolving
fast, it becomes more and more difficult to manually adapt the code constantly
to the latest hardware or software environments. A solution which is portable
to multiple hardware architectures while not substantially compromising
performance would be very beneficial, especially for long-term projects such as
the LArTPC simulations. In search of a portable, scalable and maintainable
software solution for LArTPC simulations, we have started to explore high-level
portable programming frameworks that support several hardware backends. In this
paper, we will present our experience porting the LArTPC simulation code in the
Wire-Cell toolkit to NVIDIA GPUs, first with the CUDA programming model and
then with a portable library called Kokkos. Preliminary performance results on
NVIDIA V100 GPUs and multi-core CPUs will be presented, followed by a
discussion of the factors affecting the performance and plans for future
improvements.
