Giter VIP home page Giter VIP logo

Comments (10)

ch4rr0 avatar ch4rr0 commented on June 22, 2024

I will look into and get back to you ASAP.

from bowtie.

zyndagj avatar zyndagj commented on June 22, 2024

Hello,

Has there been any development on supporting the intel compiler?

Thanks,
Greg Zynda

from bowtie.

ch4rr0 avatar ch4rr0 commented on June 22, 2024

Hello @zyndagj, @mjarsulic

Apologies for the late response.

I was able to get bowtie compiled on macOS using ICPC albeit with lots of warnings. My (rudimentary) changes are below. I will give Linux a shot tomorrow and post the changes if they are any different, and will also provide an official statement on whether or not we plan on officially supporting ICC/ICPC.

index 65196f0..5f91fd4 100644
--- a/Makefile
+++ b/Makefile
@@ -46,8 +46,8 @@ ifneq (,$(findstring Darwin,$(shell uname)))
MACOS_VER_MAJOR = $(shell uname -r | cut -d. -f1)
MACOS_VER_GT_12 = $(shell [ $(MACOS_VER_MAJOR) -gt 12 ] && echo true)
ifeq (true, $(MACOS_VER_GT_12))

  •           CPP = clang++
    
  •           CC = clang
    
  •           CPP = icpc 
    
  •           CC = icc
              override EXTRA_FLAGS += -stdlib=libstdc++
      endif
    

endif
diff --git a/SeqAn-1.1/platform_linux_gcc.h b/SeqAn-1.1/platform_linux_gcc.h
index a385cea..abdfe7b 100644
--- a/SeqAn-1.1/platform_linux_gcc.h
+++ b/SeqAn-1.1/platform_linux_gcc.h
@@ -19,7 +19,7 @@
#define finline inline

// default 64bit type
-typedef int64_t __int64;
+// typedef int64_t __int64;

//define SEQAN_SWITCH_USE_FORWARDS to use generated forwards
diff --git a/SeqAn-1.1/seqan/platform.h b/SeqAn-1.1/seqan/platform.h
index d032011..bc344cc 100644
--- a/SeqAn-1.1/seqan/platform.h
+++ b/SeqAn-1.1/seqan/platform.h
@@ -20,7 +20,7 @@

// default 64bit type
#ifndef __int64
-typedef int64_t __int64;
+// typedef int64_t __int64;
#endif

//define SEQAN_SWITCH_USE_FORWARDS to use generated forwards
diff --git a/processor_support.h b/processor_support.h
index f68ee65..b07d8dd 100644
--- a/processor_support.h
+++ b/processor_support.h
@@ -44,8 +44,8 @@ public:

 try {

#if ( defined(USING_INTEL_COMPILER) || defined(USING_MSC_COMPILER) )

  •    __cpuid((void *) &regs,0); // test if __cpuid() works, if not catch the exception
    
  •    __cpuid((void *) &regs,0x1); // POPCNT bit is bit 23 in ECX
    
  •    __cpuid((int *) &regs,0); // test if __cpuid() works, if not catch the exception
    
  •    __cpuid((int *) &regs,0x1); // POPCNT bit is bit 23 in ECX
    

#elif defined(USING_GCC_COMPILER)
__get_cpuid(0x1, &regs.EAX, &regs.EBX, &regs.ECX, &regs.EDX);
#else

from bowtie.

zyndagj avatar zyndagj commented on June 22, 2024

Do you have a separate branch that incorporates these changes? I think the markdown interpreter removed some of the syntax, preventing a patch.

from bowtie.

ch4rr0 avatar ch4rr0 commented on June 22, 2024

Sorry about that. I will have the changes (for linux and macOS) pushed to a branch by tomorrow am. I hope that works for you.

from bowtie.

zyndagj avatar zyndagj commented on June 22, 2024

That works! Thanks for the prompt reply.

from bowtie.

ch4rr0 avatar ch4rr0 commented on June 22, 2024

I was busy looking into another issue. I am getting started on this right now.

from bowtie.

ch4rr0 avatar ch4rr0 commented on June 22, 2024

I pushed the changes to this branch - https://github.com/BenLangmead/bowtie/tree/bt-v1.2.1. The changes are by no means final, and therefore may be revised before the next bowtie release. Your feedback is appreciated.

Thanks

from bowtie.

zyndagj avatar zyndagj commented on June 22, 2024

I can report that I compiled this branch of bowtie using the intel 15 compiler without any warnings with the following commands.

git clone https://github.com/BenLangmead/bowtie.git
cd bowtie
git checkout bt-v1.2.1
make CC=icc CXX=icpc EXTRA_FLAGS="-I${TBBROOT}/include -L${TBBROOT}/lib/intel64/gcc4.4 -xHOST"

I am currently testing the output to make sure alignments are comparable to gcc builds.

from bowtie.

boegel avatar boegel commented on June 22, 2024

Has anyone tried building Bowtie 1.2.1.1 with the Intel compilers, or do you have suggestions to fix compilation errors like this:

/prefix/software/GCCcore/6.4.0/bin/../include/c++/6.4.0/bits/stl_algobase.h(343): error: no operator "=" matches these operands
            operand types are: HitSink::batch = HitSink::batch
  	      *__result = std::move(*__first);

see also #77 (comment)

from bowtie.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.