2

I use ClustalX to align few unusually big sequences on my home desktop, this takes more than a week to complete and runs well below the maximum capacity of the machine.

The top | grep clustalx gives the following output

5985 @username 0 -20 1971048 105428 9012 R 99.9 2.7 5829:27 clustalx

It shows the CPU usage is ~100 and the memory usage ~3% RAM. But the system monitor says otherwise,

CPU Usage history and Memory history

There are 2 CPU cores running at maximum in the picture, that's because I am using firefox and the system monitor, otherwise its just one. I have also set the priority of clustalx to Very high and yet, there is no considerable improvement I could see.

What more should I do that it utilises more CPU and RAM. Any suggestions would be useful.

Load average ~2.7(when I'm using other programs also)

I have seen the following post related to this, but they don't answer my question:

How to increase cpu usage [closed]

System specifications:
Ubuntu 64 bit 14.04 LTS on 154GB HDD partition, 4GB RAM, Intel Core i3-4130 CPU @ 3.40GHz × 4 processor, and 10 GB swap.

Program Spcification: ClustalX for linux - Used in biological sequence alignment.

To determine if my program is 32/64 bit, I used

find /usr/bin/clustalx

/usr/bin/clustalx: ELF 64-bit LSB executable, x86-64, version 1 (SYSV),...

  • It seems probable that your program is single threaded, meaning it can only utilize one CPU at a time. So you are getting all you can out of it. – Doug Smythies Jul 14 '15 at 3:39
  • @DougSmythies how do I find it? Other programs I use(python, shell scripts) use all the resources available... – Andrew Jul 14 '15 at 3:46
  • Andrew, you'd better ask this question to Clustal developers. Generally speaking, there are no ways to force a program to use more resources without modifying the program itself. – Andrea Corbellini Jul 17 '15 at 11:34
  • @AndreaCorbellini, that would be my last resort, wanted to know if anything else is possible. – Andrew Jul 19 '15 at 16:41
2

Easy: run your program as many times as you have cores...

I do the same to transcode video in multiple formats: not all video-encoders are multi-core/multi-CPU-aware, so I run a video-encore for one resolution on one core and the other one (with different command-line parameters) on another core.

Low-quality reviewers: some complex problems have exceedingly simple solutions.

  • I haven't tried it yet, just curious though when sometime when I click on firefox's icon more than once, it throws an error saying 'an instance already running...'. Wouldn't that happen here again? – Andrew Jul 16 '15 at 5:16
  • Firefox is a multi-windowed application that is specifically programmed not to run more then once. Other examples are LibreOffice, GIMP, ... Most applications like bash, gedit, avconv aren't multi-windowed and can be run multiple times, so I can't tell you specifically for the application you're running. Just test it out. And if it works, don't forget to click the grey at the left of this text, which means Yes, this answer is valid! ;-) – Fabby Jul 16 '15 at 9:54
  • I did try it, first one with an & in the end and second one without it. There were two different pids assigned to it, all the resources were put to use though! I still had to wait the same time as a single instance running with one core utilisation. I guess they aren't cooperating, or at least in my case. – Andrew Jul 19 '15 at 16:48
  • No, off course they don't cooperate, you have to have each of them working on different sequences... ** ;-)** Sorry for being unclear. Answer edited. – Fabby Jul 19 '15 at 18:33
  • ClustalX is used to group similar regions in a pool of many sequences, I need to run them simultaneously. – Andrew Jul 20 '15 at 3:26
1

According to this:

https://www.biostars.org/p/44231/

it sounds like clustalx will only the one core, and you need to use clustal omega or mafft.

  • I have tried using MAFFT, it doesn't use up all the resources either! I'll try out Clustal Omega and get back @user3113723. – Andrew Jul 14 '15 at 6:00
  • I just found out that clustal omega doesn't align genes, it only aligns proteins. – Andrew Jul 15 '15 at 14:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.