1 INTEGER FUNCTION piparmq( ICTXT, ISPEC, NAME, OPTS, N, ILO, IHI,
15 INTEGER ictxt, ihi, ilo, ispec, lworknb, n
16 CHARACTER name*( * ), opts*( * )
180 $ ishfts = 15, iacc22 = 16 )
181 INTEGER nmin, , k22min, kacmin, nibble, knwswp
182 parameter( nmin = 220, k22min = 14, kacmin = 14,
183 $ nibble = 14, knwswp = 500, nmin2 = 770 )
185 parameter( two = 2.0 )
188 INTEGER nh, ns, myrow, , nprow, npcol, np
191 INTRINSIC log,
max, mod, nint, real
203 IF( ( ispec.EQ.ishfts ) .OR. ( ispec.EQ.inwin ) .OR.
204 $ ( ispec.EQ.iacc22 ) )
THEN
215 $ ns =
max( 10, nh / nint( log( real( nh ) ) / log( two ) ))
237 $ ns =
iceil( nh, 25 )
238 ns =
max( ns, 2*
min(nprow,npcol) )
239 ns =
max( 2, ns-mod( ns, 2 ) )
242 IF( ispec.EQ.inmin )
THEN
257 np =
min( nprow, npcol )
263 $ ceiling( 335.0d+0 * nh**(-0.44d+0) * np ) )
266 ELSE IF( ispec.EQ.ishfts )
THEN
272 ELSE IF( ispec.EQ.inwin )
THEN
276 IF( nh.LE.knwswp )
THEN
282 ELSE IF( ispec.EQ.iacc22 )
THEN
integer function piparmq(ictxt, ispec, name, opts, n, ilo, ihi, lworknb)