Seqanswers Leaderboard Ad

Collapse

Announcement

Collapse
No announcement yet.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Bowtie2 and TBB compilation

    Hi all,

    Because Bowtie2 with "-p xx" option don't make multithreading, I tried to build from source with TBB (make WITH_TBB=1), but "make" reports 6 errors.

    Versions are:
    MacOSX version: 10.10.5 (Yosemite)
    Bowtie2 src version: 2.2.8
    TBB version: 4.4-20160128

    Someone has experienced the same problem and has a solution?

    The trace begin with:

    $ make WITH_TBB=1
    c++ -O3 -m64 -msse2 -funroll-loops -g3 -DCOMPILER_OPTIONS=""-O3 -m64 -msse2 -funroll-loops -g3 -DPOPCNT_CAPABILITY -DWITH_TBB"" -DPOPCNT_CAPABILITY -DWITH_TBB \
    -fno-strict-aliasing -DBOWTIE2_VERSION=""`cat VERSION`"" -DBUILD_HOST=""`hostname`"" -DBUILD_TIME=""`date`"" -DCOMPILER_VERSION=""`c++ -v 2>&1 | tail -1`"" -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -DBOWTIE_MM -DBOWTIE2 -DNDEBUG -Wall \
    -I third_party \
    -o bowtie2-build-s bt2_build.cpp \
    ccnt_lut.cpp ref_read.cpp alphabet.cpp shmem.cpp edit.cpp bt2_idx.cpp bt2_io.cpp bt2_util.cpp reference.cpp ds.cpp multikey_qsort.cpp limit.cpp random_source.cpp diff_sample.cpp bowtie_build_main.cpp \
    -lpthread -ltbb -ltbbmalloc_proxy
    In file included from bt2_build.cpp:27:
    In file included from ./bt2_idx.h:42:
    In file included from ./blockwise_sa.h:24:
    In file included from /usr/local/include/tbb/tbb.h:53:
    In file included from /usr/local/include/tbb/flow_graph.h:30:
    /usr/local/include/tbb/task.h:913:13: error: no matching function for call to object of type 'const VSorting_worker<SString<char> >'
    my_func();
    ^~~~~~~
    /usr/local/include/tbb/task.h:917:9: note: in instantiation of member function 'tbb::internal::function_task<VSorting_worker<SString<char> > >::execute'
    requested here
    function_task( const F& f ) : my_func(f) {}
    ^
    /usr/local/include/tbb/task_group.h:100:79: note: in instantiation of member function 'tbb::internal::function_task<VSorting_worker<SString<char> >
    >::function_task' requested here
    owner().spawn( *new( owner().allocate_additional_child_of(*my_root) ) Task(f) );
    ^
    /usr/local/include/tbb/task_group.h:179:9: note: in instantiation of function template specialization 'tbb::internal::task_group_base::internal_run<const
    VSorting_worker<SString<char> >, tbb::internal::function_task<VSorting_worker<SString<char> > > >' requested here
    internal_run< const F, internal::function_task<F> >( f );
    ^
    ./diff_sample.h:832:12: note: in instantiation of function template specialization 'tbb::task_group::run<VSorting_worker<SString<char> > >' requested here
    tbb_grp.run(VSorting_worker<TStr>(((void*)&tparams[tid])));
    ^
    ./blockwise_sa.h:422:24: note: in instantiation of member function 'DifferenceCoverSample<SString<char> >::build' requested here
    _dc.get()->build(this->_nthreads);
    ^
    ./blockwise_sa.h:401:4: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
    build();
    ^
    ./blockwise_sa.h:216:32: note: in instantiation of member function 'KarkkainenBlockwiseSA<SString<char> >::reset' requested here
    { _randomSrc.init(__seed); reset(); _done = new bool[_nthreads]; }

  • #2
    Is there a reason you are compiling this on your own? Have you tried the compiled binary provided for OS X?

    Comment


    • #3
      Yes. I try to compile with TBB becasuse the MacOSX binary only launch one thread and the source version compiled without TBB also only launch one thread. So, my last option was compilation with TBB.
      Thank you for your answer.

      Comment


      • #4
        I had problems compiling bowtie2 with TBB support too. My OS was Centos 6.6. Bowtie2 source and TBB versions were the same as yours.
        My 'fix' was to compile with LDFLAGS=-L/pathto/lib(or LD_RUN_PATH=/pathto/lib) but not CPPFLAGS=-I/pathto/include(or INC=/pathto/include). Sounds weird but it did work for me...
        Hope this helps.

        Comment

        Latest Articles

        Collapse

        • seqadmin
          Recent Advances in Sequencing Analysis Tools
          by seqadmin


          The sequencing world is rapidly changing due to declining costs, enhanced accuracies, and the advent of newer, cutting-edge instruments. Equally important to these developments are improvements in sequencing analysis, a process that converts vast amounts of raw data into a comprehensible and meaningful form. This complex task requires expertise and the right analysis tools. In this article, we highlight the progress and innovation in sequencing analysis by reviewing several of the...
          Today, 07:48 AM
        • seqadmin
          Essential Discoveries and Tools in Epitranscriptomics
          by seqadmin




          The field of epigenetics has traditionally concentrated more on DNA and how changes like methylation and phosphorylation of histones impact gene expression and regulation. However, our increased understanding of RNA modifications and their importance in cellular processes has led to a rise in epitranscriptomics research. “Epitranscriptomics brings together the concepts of epigenetics and gene expression,” explained Adrien Leger, PhD, Principal Research Scientist...
          04-22-2024, 07:01 AM

        ad_right_rmr

        Collapse

        News

        Collapse

        Topics Statistics Last Post
        Started by seqadmin, Today, 07:17 AM
        0 responses
        3 views
        0 likes
        Last Post seqadmin  
        Started by seqadmin, 05-02-2024, 08:06 AM
        0 responses
        19 views
        0 likes
        Last Post seqadmin  
        Started by seqadmin, 04-30-2024, 12:17 PM
        0 responses
        20 views
        0 likes
        Last Post seqadmin  
        Started by seqadmin, 04-29-2024, 10:49 AM
        0 responses
        28 views
        0 likes
        Last Post seqadmin  
        Working...
        X