# Large wall time, small CPU\_TIME, what does that tell you?

**URL:** <https://fortran-lang.discourse.group/t/large-wall-time-small-cpu-time-what-does-that-tell-you/10643>\
**Category:** Uncategorized\
**Created:** [January 22, 2026, 12:52am UTC](https://fortran-lang.discourse.group/t/large-wall-time-small-cpu-time-what-does-that-tell-you/10643 "2026-01-22T00:52:41Z")\
**Posts on this page:** 1\
**Showing post:** 23

<div class="post-metadata">

**Author:** ![CRquantum](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/crquantum/32/730_2.png) [@CRquantum](https://fortran-lang.discourse.group/u/CRquantum)\
**Post date:** [January 23, 2026, 7:28am UTC](https://fortran-lang.discourse.group/t/large-wall-time-small-cpu-time-what-does-that-tell-you/10643/23 "2026-01-23T07:28:50Z")

</div>

> [@RonShepard](#):
>
> This is the code I used in my previous post. I explained why it failed and two ways to fix it (one suggested by you earlier), and I posted timing results with the fixed version.

Thanks! I see. This issue may be remotely kind of related with the following two posts:

> [@Integer 4 or integer 8?](https://fortran-lang.discourse.group/t/integer-4-or-integer-8/3076/3):
>
> In the original version of OP there was an array AAA(np,nd). I guess that internally, the processor should deal properly even with AAA(100000,100000) although the indices would overflow when simply multiplied. In explicit calculations, however, one has to make sure there is no overflow and use proper kind(s). Note also, that with your declarations: integer(kind=i4) :: np,nd integer(kind=i8) :: jjj jjj = np\*nd jjj will not be properly assigned if np\*nd overflows in i4 kind. Consider sample pro…

> [@LightKrylov (v0.1.0-beta) : Pre-release](https://fortran-lang.discourse.group/t/lightkrylov-v0-1-0-beta-pre-release/8766/13):
>
> If you use EXPOKIT, note that there are some small bugs in some of its code which can cause integer overflow and lead to wrong results. For example, in dgpadm.f, around line 87 Originally it is scale = t / DBLE(2\*\*ns) that 2\*\*ns will cause integer overflow if ns\>30 if the default integer type is integer 4, then the DBLE(2\*\*ns) will be something like NAN. You need to change DBLE(2\*\*ns) to something like 2.0d0\*\*ns Without this fix, every time if ns\>30, dgpadm will just output wron…

---

_[View the full topic](https://fortran-lang.discourse.group/t/large-wall-time-small-cpu-time-what-does-that-tell-you/10643)._
