diff options
author | Étienne Mollier <emollier@debian.org> | 2024-01-19 18:32:56 +0100 |
---|---|---|
committer | Étienne Mollier <emollier@debian.org> | 2024-01-19 18:32:56 +0100 |
commit | c394c549b4cc2d17e7f9b68d8987ad2f5eb30c57 (patch) | |
tree | a7e0538f77ab7b106e8d436dda5122d045a4bb56 | |
parent | d89a1195f7416c8d637477dfe856a2e1b9c487ed (diff) | |
parent | 2e62061e17e42564bea6e0451744de0aa0cdce6a (diff) |
Update upstream source from tag 'upstream/1.5.1'
Update to upstream version '1.5.1'
with Debian dir c778dd82116d8fd72e23f68fcc773281a9607232
-rw-r--r-- | README.md | 28 | ||||
-rw-r--r-- | setup.py | 2 | ||||
-rw-r--r-- | src/abpoa.c | 2 | ||||
-rw-r--r-- | src/simd_abpoa_align.c | 6 |
4 files changed, 19 insertions, 19 deletions
@@ -5,18 +5,18 @@ [![PyPI](https://img.shields.io/pypi/dm/pyabpoa.svg?label=pip%20install)](https://pypi.python.org/pypi/pyabpoa) [![Published in Bioinformatics](https://img.shields.io/badge/Published%20in-Bioinformatics-blue.svg)](https://dx.doi.org/10.1093/bioinformatics/btaa963) [![GitHub Issues](https://img.shields.io/github/issues/yangao07/abPOA.svg?label=Issues)](https://github.com/yangao07/abPOA/issues) -[![Build Status](https://img.shields.io/travis/yangao07/abPOA/master.svg?label=Master)](https://travis-ci.org/yangao07/abPOA) -[![License](https://img.shields.io/badge/License-MIT-black.svg)](https://github.com/yangao07/abPOA/blob/master/LICENSE) +[![Build Status](https://img.shields.io/travis/yangao07/abPOA/main.svg?label=Main)](https://travis-ci.org/yangao07/abPOA) +[![License](https://img.shields.io/badge/License-MIT-black.svg)](https://github.com/yangao07/abPOA/blob/main/LICENSE) <!-- [![PyPI](https://img.shields.io/pypi/v/pyabpoa.svg?style=flat)](https://pypi.python.org/pypi/pyabpoa) --> -## Updates (v1.5.0) +## Updates (v1.5.1) -- Fix memory allocation bug for local alignment mode +- Fix a memory allocation bug caused by int overflow when memery is large (>4G) ## Getting started Download the [latest release](https://github.com/yangao07/abPOA/releases): ``` -wget https://github.com/yangao07/abPOA/releases/download/v1.5.0/abPOA-v1.5.0.tar.gz -tar -zxvf abPOA-v1.5.0.tar.gz && cd abPOA-v1.5.0 +wget https://github.com/yangao07/abPOA/releases/download/v1.5.1/abPOA-v1.5.1.tar.gz +tar -zxvf abPOA-v1.5.1.tar.gz && cd abPOA-v1.5.1 ``` Make from source and run with test data: ``` @@ -34,7 +34,7 @@ abpoa ./test_data/seq.fa > cons.fa ## Table of Contents - [abPOA: adaptive banded Partial Order Alignment](#abpoa-adaptive-banded-partial-order-alignment) - - [Updates (v1.5.0)](#updates-v150) + - [Updates (v1.5.1)](#updates-v151) - [Getting started](#getting-started) - [Table of Contents](#table-of-contents) - [Introduction](#introduction) @@ -92,9 +92,9 @@ You can also build abPOA from source files. Make sure you have gcc (>=6.4.0) and zlib installed before compiling. It is recommended to download the [latest release](https://github.com/yangao07/abPOA/releases). ``` -wget https://github.com/yangao07/abPOA/releases/download/v1.5.0/abPOA-v1.5.0.tar.gz -tar -zxvf abPOA-v1.5.0.tar.gz -cd abPOA-v1.5.0; make +wget https://github.com/yangao07/abPOA/releases/download/v1.5.1/abPOA-v1.5.1.tar.gz +tar -zxvf abPOA-v1.5.1.tar.gz +cd abPOA-v1.5.1; make ``` Or, you can use `git clone` command to download the source code. This gives you the latest version of abPOA, which might be still under development. @@ -106,13 +106,13 @@ cd abPOA; make ### <a name="binary"></a>Pre-built binary executable file for Linux/Unix or MacOS If you meet any compiling issue, please try the pre-built binary file for linux: ``` -wget https://github.com/yangao07/abPOA/releases/download/v1.5.0/abPOA-v1.5.0_x64-linux.tar.gz -tar -zxvf abPOA-v1.5.0_x64-linux.tar.gz +wget https://github.com/yangao07/abPOA/releases/download/v1.5.1/abPOA-v1.5.1_x64-linux.tar.gz +tar -zxvf abPOA-v1.5.1_x64-linux.tar.gz ``` or for macos: ``` -wget https://github.com/yangao07/abPOA/releases/download/v1.5.0/abPOA-v1.5.0_arm64-macos.tar.gz -tar -zxvf abPOA-v1.5.0_arm64-macos.tar.gz +wget https://github.com/yangao07/abPOA/releases/download/v1.5.1/abPOA-v1.5.1_arm64-macos.tar.gz +tar -zxvf abPOA-v1.5.1_arm64-macos.tar.gz ``` ## <a name="usage"></a>General usage @@ -60,7 +60,7 @@ setup( description = "pyabpoa: SIMD-based partial order alignment using adaptive band", long_description = long_description, long_description_content_type="text/markdown", - version = "1.5.0", + version = "1.5.1", url = "https://github.com/yangao07/abPOA", author = "Yan Gao", author_email = "gaoy1@chop.edu", diff --git a/src/abpoa.c b/src/abpoa.c index bf7ccd7..64105c1 100644 --- a/src/abpoa.c +++ b/src/abpoa.c @@ -16,7 +16,7 @@ char PROG[20] = "abpoa"; #define _bO BOLD UNDERLINE "O" NONE #define _bA BOLD UNDERLINE "A" NONE char DESCRIPTION[100] = _ba "daptive " _bb "anded " _bP "artial " _bO "rder " _bA "lignment"; -char VERSION[20] = "1.5.0"; +char VERSION[20] = "1.5.1"; char CONTACT[30] = "gaoy1@chop.edu"; const struct option abpoa_long_opt [] = { diff --git a/src/simd_abpoa_align.c b/src/simd_abpoa_align.c index 5505c95..9c2363c 100644 --- a/src/simd_abpoa_align.c +++ b/src/simd_abpoa_align.c @@ -1177,8 +1177,8 @@ void abpoa_free_simd_matrix(abpoa_simd_matrix_t *abm) { // * dp_beg/end, dp_beg/end_sn if band // * pre_n, pre_index int simd_abpoa_realloc(abpoa_t *ab, int gn, int qlen, abpoa_para_t *abpt, SIMD_para_t sp) { - int pn = sp.num_of_value, size = sp.size, sn = (qlen + sp.num_of_value) / pn; - uint64_t s_msize = sn; s_msize = s_msize * abpt->m * size; // qp + uint64_t pn = sp.num_of_value, size = sp.size, sn = (qlen + sp.num_of_value) / pn; + uint64_t s_msize = sn * abpt->m * size; // qp if (abpt->gap_mode == ABPOA_LINEAR_GAP) s_msize += (sn * gn * size); // DP_H, linear else if (abpt->gap_mode == ABPOA_AFFINE_GAP) s_msize += (sn * gn * 3 * size); // DP_HEF, affine @@ -1191,7 +1191,7 @@ int simd_abpoa_realloc(abpoa_t *ab, int gn, int qlen, abpoa_para_t *abpt, SIMD_p // err_func_format_printf(__func__, "Warning: Graph is too large or query is too long.\n"); // return 1; // } - // fprintf(stderr, "%lld, %lld, %lld\n", (long long)node_n, (long long)ab->abm->s_msize, (long long)s_msize); + // fprintf(stderr, "%lld, %lld, %lld\n", (long long)gn, (long long)ab->abm->s_msize, (long long)s_msize); if (s_msize > ab->abm->s_msize) { if (ab->abm->s_mem) SIMDFree(ab->abm->s_mem); kroundup64(s_msize); ab->abm->s_msize = s_msize; |