[parsec-users] Segmentation fault with freqmine

kishore kumar kishoreguptaos at gmail.com
Thu Feb 3 14:56:35 EST 2011


Hi,

I have compiled and run freqmine using both sunstudio12.1 and  g++-4.3.2
compiler  on
 my OpenSolaris AMD Opteron machine. However, if I run freqmine with more
than
6 threads then getting segmentation fault with both the versions. Otherwise
getting clean
output.

$ldd freqmine
    libstdc++.so.6 =>     /usr/lib/libstdc++.so.6
    libm.so.2 =>     /lib/libm.so.2
    libgomp.so.1 =>     /usr/lib/libgomp.so.1
    libgcc_s.so.1 =>     /usr/lib/libgcc_s.so.1
    libpthread.so.1 =>     /lib/libpthread.so.1
    libc.so.1 =>     /lib/libc.so.1


I think that there is a problem with database_aligning() method of
fp_tree.cpp
 and the problem is generated from the nested while loop of the following
code snippet of database_aligning method.  May be unsigned short size of
newcontent
is not sufficient.

Did anyone face similar problem?
 Please let me know if there is any fix for this.

from fp_tree.cpp
----------------

 716 #pragma omp parallel for
 717     for (i = 0; i < workingthread; i ++) {
 718         MapFileNode *current_mapfilenode;
 719         unsigned short * content;
 720         int k, size, current_pos, ntype, has;
 721         unsigned short *new_content;
 722         int *local_threadntypeoffsetiter = threadntypeoffsetiter[i];
 723         current_mapfilenode = thread_mapfile[i]->first;
 724         while (current_mapfilenode) {
 725             size = current_mapfilenode->top;
 726             current_pos = 0;
 727             content = (unsigned short
*)current_mapfilenode->TransactionContent;
 728             while (current_pos < size) {
 729                 ntype = content[current_pos];
 730                 current_pos ++;
 731                 has = content[current_pos];
 732                 new_content = threadtranscontent +
local_threadntypeoffsetiter[ntype];
 733                 local_threadntypeoffsetiter[ntype] += has + 1;
 734                 for (k = 0; k < has + 1; k ++)
 735                     new_content[k] = content[current_pos ++];
 736             }
 737             current_mapfilenode->finalize();
 738             current_mapfilenode = current_mapfilenode->next;
 739         }
 740     }



Best,
Kishore Kumar Pusukuri
http://www.cs.ucr.edu/~kishore <http://www.cs.ucr.edu/%7Ekishore>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/parsec-users/attachments/20110203/c99819c0/attachment.html>


More information about the parsec-users mailing list