braker踩坑記錄

2021-10-23 01:22:12 字數 2879 閱讀 7639

1、startalign.pl的時間與genome.fasta的contig的數量相關,genome.fasta大小為1g,24個cpu的情況下,如果是2000個contigs大約3個小時,後面gmes_petap.pl的時間大約也是3小時。

相同的基因組大小,如果contigs為10000個,時間大約是40個小時。

如果可能,建議過濾掉太短的contig。seq_tool.py len-filter -i genomic.fna -l 1000 -o genome.over1k.fasta

2、repeatmodeler,如果參考同源蛋白只有序列名,序列內容為空,會在執行過程中停止,並且不會報錯,所以一定要檢查輸入的pep.fasta;

3、genome.fasta中序列名稱最好不要有空格,長度不大於50。

否則會在filtergenesin_mrnaname.pl這一步出錯。

less genome.over1k.fasta |perl -e 'while(<>)else}' >src_genome.fasta

4、 沒有rna資料:

如果只有genome.fasta和homolog.fasta,那麼可以用

braker.pl --species=test --genome=genome.fasta --prot_seq=homolog.fasta --prg=gth --trainfromgth

不提供rna資料來做,1個g的基因組,10m的homolog.fasta,對基因組採用6%隨機取樣,跑了一下測試;

optimizing augustus parameters這一步會花費4個小時,optimize_augustus.pl

running augustus with hints這一步會花費3個小時,augustus

按照這樣的時間估算,沒有rna資料,1個g的基因組,10m的蛋白質,不考慮contigs組裝的質量,大約需要116個小時跑完braker。

# mon mar 30 07:12:49 2020: optimizing augustus parameters

perl /path/.conda/envs/lq/bin/optimize_augustus.pl --rounds=5 --species=pacri --kfold=8 --augustus_config_path=/path/.conda/envs/lq/config/ --onlytrain=/path/pre/pacri/braker/pacri/train.gb.train.train /path/pre/pacri/braker/pacri/train.gb.train.test 1>/path/pre/pacri/braker/pacri/optimize_augustus.stdout 2>/path/pre/pacri/braker/pacri/errors/optimize_augustus.stderr

# sun apr 5 01:23:01 2020: parameter optimization finished.

實際的情況是,optimizing augustus parameters這一步就花了138個小時,中間都有些想放棄了。

時間這麼長可能的原因是基因組質量不太好,大於1000的contigs有3萬多個,沒過濾之前contigs有17萬條。

拭目以待下一步要多久。

# sun apr  5 01:37:11 2020: running augustus with hints for file /path/pre/pacri/braker/pacri/genome.fa

/path/bin/augustus --species=pacri --augustus_config_path=/path/config/ --extrinsiccfgfile=/opt/biosoft/braker-2.1.2/scripts/cfg/gth.cfg --alternatives-from-evidence=true --hintsfile=/path/pre/pacri/braker/pacri/hintsfile.gff --utr=off --exonnames=on --codingseq=on --allow_hinted_splicesites=gcag,atac /path/pre/pacri/braker/pacri/genome.fa 1>/path/pre/pacri/braker/pacri/augustus.hints.gff 2>/path/pre/pacri/braker/pacri/errors/augustus.hints.stderr

# tue apr 7 10:20:58 2020: ****** a gtf file from /path/pre/pacri/braker/pacri/augustus.hints.gff

cat /path/pre/pacri/braker/pacri/augustus.hints.gff | perl -ne 'if(m/\taugustus\t/) ' | perl /path/bin/gtf2gff.pl --printexon --out=/path/pre/pacri/braker/pacri/augustus.hints.tmp.gtf 2>/path/pre/pacri/braker/pacri/errors/gtf2gff.augustus.hints.gtf.stderr

# tue apr 7 10:21:10 2020: augustus prediction complete

需要56個小時。

# tue apr  7 10:21:10 2020: ****** a fasta file with protein sequences of /path/pre/pacri/braker/pacri/augustus.hints.gtf
到生成augustus.hints.gtf就算完成了。

平行還有個contigs是3906條的在跑,看看時間的對比。

Python 踩坑記錄

1.浮點數判斷 工作中遇到類似下面邏輯判斷 i 1 while i 1.5 i i 0.1 print i在想象中i應該停止在1.5就不輸出了,但是實際的輸出結果是無限迴圈。這是因為在計算機的邏輯中,浮點數的儲存規則決定了不是所有的浮點數都能準確表示,有些是不準確的,只是無限接近。如0.1轉換為二進...

Java踩坑記錄

1.quartz整合spring框架service層物件注入為null解決方案 jobdetailfactorybean中注入的是乙個cn.itcast.quartz.hellojob實現類的全路徑,底層會反射建立出乙個hellojob的物件,但是該物件不是由spring管理的,所以業務層的物件無法...

SSD踩坑記錄

原github專案位址,借用大神的模型自己訓練ssd 1 error default maxpoolingop only supports nhwc on device type cpu data format nchw 修改為 nhwc 2 關於dataset name 將影象資料轉換為tfrec...