[Haskell] Where's the problem ?

Rome roman.kraehling at unibw-muenchen.de
Tue Jul 3 14:49:53 EDT 2007




Rome wrote:
> 
> Hi everyone,
> 
> I write a program for fast online multiplication, this means, leading
> digits are computed first, so this program is able to handle real numbers. 
> 
> My program and Source-Code is available under
>  http://www.romeinf04.de http://www.romeinf04.de 
> 
> but only with german comments, because this is my master thesis.
> 
> Now the problem:
> My program computes using the schoenhage-strassen multiüply-subroutine the
> output everytime only until the 32777th Digit, but then it holds without
> an error message. Windows Task manager tells me CPU Usage 100% and Memory
> Allocation is increasing.
> Profiling told me, the function Algorithm.resultOfMult is using this
> memory.
> To compute the 32777th digit, my program needs several digits of the
> input-numbers including the 32800th.
> I'm using GHC 6.6.1 with option -O2 to compile.
> 
> Output is row-wise by an IO-function, calling itself recursively with
> updated parameters, hte output looks like:
> 
> dig11 dig21 --> res1
> dig12 dig22 --> res2
> dig12 dig23 --> res3
> .
> .
> . and so on
> 
> If I use the Naive-Multiply-Subroutine, the problem occurs at the 16392th
> digit.
> I don't have any idea, where the problem might be...
> 
> Greetings
> 
> Roman
> 
> Please excuse my english writing, I'm from Germany.
> 
> 


So, 
a friend of mine compiled it under Linux and got this result:
.
.
.
32779 :  1   1 ---32776-->  0
32780 :  1   0 ---32777--> -1
Main: Ix{Integer}.index: Index (32766) out of range ((0,32765))

Now I know, what i've to look for...

-- 
View this message in context: http://www.nabble.com/Where%27s-the-problem---tf4019116.html#a11418408
Sent from the Haskell - Haskell mailing list archive at Nabble.com.



More information about the Haskell mailing list