Unconfigured Ad

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • jjk
    Member
    • Nov 2009
    • 21

    GPU CUDA BLAST Efficiency

    I am currently in the possession of the following:

    7x CPU
    16 GB memory

    and a GeForce GTX 670 GPU
    Check out the latest NVIDIA GeForce technology specifications, system requirements, and more.


    Now I was testing CUDA BLAST and basically you can set the database up with three different parameters as far as I could find. Namely the following:

    -gpu_blocks
    -gpu_threads
    -max_file_sz

    Now I had a script running that combines a various of settings and then ran BLAST. The speed for all vs all of 1308 proteins varied from 55 seconds to 19 seconds. Now I was curious how do I know what is the best setting beside trying out all possible combinations?

    I should have 1344 CUDA Cores on the GPU.
  • mike.t
    Member
    • Mar 2010
    • 36

    #2
    Hi jjk - I can't answer your questions, but I was wondering what your benchmark time is with standalone blast without the GPU.

    Just a guess but I would think that -gpu_threads should be fixed to 1344 since that is how many cores you have. That would reduce the number combinations you have to search. You could do a grid search, or in your case a cube search. If you imagine your search space as a cube you can start your search in a defined smaller cube and do an exhaustive search of all possible combinations within. If your optimum lands on an edge, you can search the next space adjacent to that and continue until you reach an optimum that is not on an edge. That may save you from searching the whole space.

    You could also try a genetic algorithm...and there are other optimization strategies out there.

    Comment

    • severin
      Genome Informatics Facility
      • Sep 2009
      • 105

      #3
      Originally posted by jjk View Post
      I am currently in the possession of the following:

      7x CPU
      16 GB memory

      and a GeForce GTX 670 GPU
      Check out the latest NVIDIA GeForce technology specifications, system requirements, and more.


      Now I was testing CUDA BLAST and basically you can set the database up with three different parameters as far as I could find. Namely the following:

      -gpu_blocks
      -gpu_threads
      -max_file_sz

      Now I had a script running that combines a various of settings and then ran BLAST. The speed for all vs all of 1308 proteins varied from 55 seconds to 19 seconds. Now I was curious how do I know what is the best setting beside trying out all possible combinations?

      I should have 1344 CUDA Cores on the GPU.
      I ran into similar issues though I found that the best speed was obtained by maxing out the -gpu_threads=1024 reducing the file size to 1 MB and then finding the largest -gpu_blocks that is permitted based on the limitations of memory on the GPU.

      One caveat is that I have come to conclude that a single GPU is not faster than 30-60 cpu cores and probably less for BLASTing.

      Best of luck

      Andrew

      Comment

      Latest Articles

      Collapse

      ad_right_rmr

      Collapse

      News

      Collapse

      Topics Statistics Last Post
      Started by SEQadmin2, 06-05-2026, 10:09 AM
      0 responses
      16 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-04-2026, 08:59 AM
      0 responses
      34 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-02-2026, 12:03 PM
      0 responses
      37 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-02-2026, 11:40 AM
      0 responses
      24 views
      0 reactions
      Last Post SEQadmin2  
      Working...