ARVO-CL: The OpenCL version of the ARVO package — An efficient tool for computing the accessible surface area and the excluded volume of proteins via analytical equations
Introduction of Graphical Processing Units (GPUs) and computing using GPUs in recent years opened possibilities for simple parallelization of programs. In this update, we present the modernized version of program ARVO [J. Buša, J. Dzurina, E. Hayryan, S. Hayryan, C.-K. Hu, J. Plavka, I. Pokorný, J....
        Saved in:
      
    
          | Published in | Computer physics communications Vol. 183; no. 11; pp. 2494 - 2497 | 
|---|---|
| Main Authors | , , , | 
| Format | Journal Article | 
| Language | English | 
| Published | 
            Elsevier B.V
    
        01.11.2012
     | 
| Subjects | |
| Online Access | Get full text | 
| ISSN | 0010-4655 1879-2944  | 
| DOI | 10.1016/j.cpc.2012.04.019 | 
Cover
| Abstract | Introduction of Graphical Processing Units (GPUs) and computing using GPUs in recent years opened possibilities for simple parallelization of programs. In this update, we present the modernized version of program ARVO [J. Buša, J. Dzurina, E. Hayryan, S. Hayryan, C.-K. Hu, J. Plavka, I. Pokorný, J. Skivánek, M.-C. Wu, Comput. Phys. Comm. 165 (2005) 59]. The whole package has been rewritten in the C language and parallelized using OpenCL. Some new tricks have been added to the algorithm in order to save memory much needed for efficient usage of graphical cards. A new tool called ‘input_structure’ was added for conversion of pdb files into files suitable for work with the C and OpenCL version of ARVO.
Program title: ARVO-CL
Catalog identifier: ADUL_v2_0
Program summary URL: http://cpc.cs.qub.ac.uk/summaries/ADUL_v2_0.html
Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland
Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.html
No. of lines in distributed program, including test data, etc.: 11834
No. of bytes in distributed program, including test data, etc.: 182528
Distribution format: tar.gz
Programming language: C, OpenCL.
Computer: PC Pentium; SPP’2000.
Operating system: All OpenCL capable systems.
Has the code been vectorized or parallelized?: Parallelized using GPUs. A serial version (non GPU) is also included in the package.
Classification: 3.
External routines: cl.hpp (http://www.khronos.org/registry/cl/api/1.1/cl.hpp)
Catalog identifier of previous version: ADUL_v1_0
Journal reference of previous version: Comput. Phys. Comm. 165(2005)59
Does the new version supercede the previous version?: Yes
Nature of problem: Molecular mechanics computations, continuum percolation
Solution method: Numerical algorithm based on the analytical formulas, after using the stereographic transformation.
Reasons for new version: During the past decade we have published a number of protein structure related algorithms and software packages [1,2,3,4,5,6] which have received considerable attention from researchers and interesting applications of such packages have been found. For example, ARVO [4] has been used to find that ratios of volume V to surface area A, for proteins in Protein Data Bank (PDB) distribute in a narrow range [7]. Such a result is useful for finding native structures of proteins.
Therefore, we consider that there is a demand to revise and modernize these tools and to make them more efficient. Here we present the new version of the ARVO package. The original ARVO package was written in the FORTRAN language. One of the reasons for the new version is to rewrite it in C in order to make it more friendly to the young researchers who are not familiar with FORTRAN. Another, more important reason is to use the possibilities for speeding-up provided by modern graphical cards. We also want to eliminate the necessity of re-compiling the program for every molecule. For this purpose, we have added the possibility of using general pdb [8] files as an input. Once compiled, the program can receive any number of input files successively. Also, we found it necessary to go through the algorithm and to make some tricks for avoiding unnecessary memory usage so that the package becomes more efficient.
Summary of revisions: 1. New tool. ARVO is designed to calculate the volume and accessible surface area of an arbitrary system of overlapping spheres (representing atoms), the biomolecules being just one albeit important, application. The user provides the coordinates and radii of the spheres as well as the radius of the probe sphere (water molecule for biomolecules). In the old version of ARVO the input of data was organized immediately in the code, which made it necessary to re-compile the program after every change in the input data. In the current version a module called ‘input_structure’ has been created to input the data from an independent external file. The coordinates and radii are stored in the file with extension *.ats (see the directory ‘input’ in the package). Each line in the file corresponds to one sphere (atom) and has the format 24.733−4.992−13.2562.800. The first three numbers are the (x,y,z) coordinates of the atom and the last one is the radius. It is important to remember that the radius of the probe sphere must be already added to this number. In the above example, the value 2.800 is obtained by the formula “sphere radius+probe sphere radius”. In the case of the arbitrary system of spheres the file *.ats is created by the user. In the case of proteins the ‘input_structure’ takes as an input a file in the format compatible with Protein Data Bank (pdb) format [8] and creates a corresponding *.ats file. It also assigns automatically, radii to individual spheres and (optionally) adds to all radii the probe sphere (water molecule) radius. As output, it produces a file containing coordinates of spheres together with radii. This file works automatically as an input for ARVO. Using an external tool allows users to create their own mappings of atoms and radii without the need to re-compile the tool ‘input_structure’ or program ARVO. It is again the user’s responsibility to assign proper radii to each type of atom. One can use any of the published standard sets of radii (see for example, [9,10,11,12,13]). Alternatively, the user can assign his own values for radii immediately in the module input_structure. The radii are assigned in a special file with extension *pds (see the documentation) which consists of lines like this: ATOM CA ALA 2.0 which is read as “the Calpha atom of Alanine has radius 2.0 Angstroms”. Here we provide for testing of the file rashin.pds where the radii are assigned according to [12].
The output file contains only recognized atoms. Atoms that were not recognized (are not part of mapping) are written to a separate log file allowing the user to review and correct the mapping files later.
2. The Language. Implementing the program in C is a natural first step when translating a program into OpenCL. This implementation is rewritten line-by-line from the original FORTRAN version of ARVO.
3. OpenCL implementation. OpenCL [14] is an open standard for parallel programming of heterogeneous systems. Unlike other parallelization technologies like CUDA [15] or ATI Stream [16] which are interconnected with specific hardware (produced by NVIDIA or ATI, respectively), OpenCL is vendor-independent, and programs written in OpenCL can be run on any hardware of companies supporting this standard, including AMD, INTEL, and NVIDIA. Programs written in OpenCL can be run without much change both on CPUs and GPUs.
Improvements as compared with the original version: Support for files in the format as created by ‘input_structure’; input of parameters (name of input file) via command line; dynamic size of arrays—removal of the necessity to re-compile the program after any change in size of structures; memory allocation according to the real demands of the application; replacing north pole test by slight reduction of the radius (see below).
To compile an OpenCL program, one needs to download and install the appropriate driver and software development kit (SDK). The program itself consists of two parts: a part running on the CPU and a part running on the GPU. The CPU initializes communication between the computer and the GPU, load data, processes and exports results. The GPU does the parallel part of calculation, consisting of the search for neighboring atoms and calculating the contribution of the area and volume of the individual atom to the total area and volume of the molecule. For details of the algorithm, please read Refs. [3,4].
In programming using OpenCL, more attention must be given to memory used than in a classical approach. Memory of the device is usually limited and therefore, some changes to the original algorithm are necessary. First, unlike in the FORTRAN version of the program, no structures containing the list of neighbor atoms are created. The search for the neighbors is done on-line, when the calculation of the contribution from individual atoms is being performed. Table 1Comparison of volumes and surface areas of different proteins obtained by original ARVO and by the new version. Different strategies for dealing with the “north pole” are applied. The first column contains the PDB ID of the protein and the number of atoms. Second column contains the volume of the protein obtained with original ARVO (upper number) and the difference with the new approach (lower number). Third column contains the same as in the second column for the surface area. Fourth column contains the number of rotations of the molecule in original ARVO (upper number) and the number of atoms whose radii have been reduced in the new version (lower number). Fifth column contains the relative errors for the volume (upper number) and the area (lower number).Protein atoms #Volume diffArea diffRotat. reduct.δvolume (%) δarea (%)3rn323,951.1804696858.3226363−1.04⋅10−7957−0.000025−0.0000071−1.02⋅10−73cyt40,875.86739511,455.4748323−3.85⋅10−61600−0.0015750.00141541.24⋅10−42act38,608.2430389054.00735041.28⋅10−416570.0494800.00173321.91⋅10−52brd43,882.73547910,918.20352921−7.84⋅10−71738−0.000344−0.0000971−8.88⋅10−78tln56,698.98888312,496.97806415−1.70⋅10−62455−0.0009660.00045943.67⋅10−61rr8105,841.50219227,983.15977218−6.60⋅10−74108−0.000699−0.0002144−7.65⋅10−71xi51743,445.092001863,139.88270314.42⋅10−715,6960.0077090.00007018.11⋅10−9
The strategy behind the North Pole check and molecule rotation [4, Sec. 4.7] has been changed. If during the north pole test, the north pole of the active sphere lies close to the surface of a neighboring sphere, the radius of such a neighboring sphere is multiplied by 0.9999 instead of rotating the whole molecule. This allows the algorithm to continue normally. Changing the radius of one atom changes the area and the volume of this atom by 0.02% and 0 | 
    
|---|---|
| AbstractList | Introduction of Graphical Processing Units (GPUs) and computing using GPUs in recent years opened possibilities for simple parallelization of programs. In this update, we present the modernized version of program ARVO [J. Buša, J. Dzurina, E. Hayryan, S. Hayryan, C.-K. Hu, J. Plavka, I. Pokorný, J. Skivánek, M.-C. Wu, Comput. Phys. Comm. 165 (2005) 59]. The whole package has been rewritten in the C language and parallelized using OpenCL. Some new tricks have been added to the algorithm in order to save memory much needed for efficient usage of graphical cards. A new tool called ‘input_structure’ was added for conversion of pdb files into files suitable for work with the C and OpenCL version of ARVO.
Program title: ARVO-CL
Catalog identifier: ADUL_v2_0
Program summary URL: http://cpc.cs.qub.ac.uk/summaries/ADUL_v2_0.html
Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland
Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.html
No. of lines in distributed program, including test data, etc.: 11834
No. of bytes in distributed program, including test data, etc.: 182528
Distribution format: tar.gz
Programming language: C, OpenCL.
Computer: PC Pentium; SPP’2000.
Operating system: All OpenCL capable systems.
Has the code been vectorized or parallelized?: Parallelized using GPUs. A serial version (non GPU) is also included in the package.
Classification: 3.
External routines: cl.hpp (http://www.khronos.org/registry/cl/api/1.1/cl.hpp)
Catalog identifier of previous version: ADUL_v1_0
Journal reference of previous version: Comput. Phys. Comm. 165(2005)59
Does the new version supercede the previous version?: Yes
Nature of problem: Molecular mechanics computations, continuum percolation
Solution method: Numerical algorithm based on the analytical formulas, after using the stereographic transformation.
Reasons for new version: During the past decade we have published a number of protein structure related algorithms and software packages [1,2,3,4,5,6] which have received considerable attention from researchers and interesting applications of such packages have been found. For example, ARVO [4] has been used to find that ratios of volume V to surface area A, for proteins in Protein Data Bank (PDB) distribute in a narrow range [7]. Such a result is useful for finding native structures of proteins.
Therefore, we consider that there is a demand to revise and modernize these tools and to make them more efficient. Here we present the new version of the ARVO package. The original ARVO package was written in the FORTRAN language. One of the reasons for the new version is to rewrite it in C in order to make it more friendly to the young researchers who are not familiar with FORTRAN. Another, more important reason is to use the possibilities for speeding-up provided by modern graphical cards. We also want to eliminate the necessity of re-compiling the program for every molecule. For this purpose, we have added the possibility of using general pdb [8] files as an input. Once compiled, the program can receive any number of input files successively. Also, we found it necessary to go through the algorithm and to make some tricks for avoiding unnecessary memory usage so that the package becomes more efficient.
Summary of revisions: 1. New tool. ARVO is designed to calculate the volume and accessible surface area of an arbitrary system of overlapping spheres (representing atoms), the biomolecules being just one albeit important, application. The user provides the coordinates and radii of the spheres as well as the radius of the probe sphere (water molecule for biomolecules). In the old version of ARVO the input of data was organized immediately in the code, which made it necessary to re-compile the program after every change in the input data. In the current version a module called ‘input_structure’ has been created to input the data from an independent external file. The coordinates and radii are stored in the file with extension *.ats (see the directory ‘input’ in the package). Each line in the file corresponds to one sphere (atom) and has the format 24.733−4.992−13.2562.800. The first three numbers are the (x,y,z) coordinates of the atom and the last one is the radius. It is important to remember that the radius of the probe sphere must be already added to this number. In the above example, the value 2.800 is obtained by the formula “sphere radius+probe sphere radius”. In the case of the arbitrary system of spheres the file *.ats is created by the user. In the case of proteins the ‘input_structure’ takes as an input a file in the format compatible with Protein Data Bank (pdb) format [8] and creates a corresponding *.ats file. It also assigns automatically, radii to individual spheres and (optionally) adds to all radii the probe sphere (water molecule) radius. As output, it produces a file containing coordinates of spheres together with radii. This file works automatically as an input for ARVO. Using an external tool allows users to create their own mappings of atoms and radii without the need to re-compile the tool ‘input_structure’ or program ARVO. It is again the user’s responsibility to assign proper radii to each type of atom. One can use any of the published standard sets of radii (see for example, [9,10,11,12,13]). Alternatively, the user can assign his own values for radii immediately in the module input_structure. The radii are assigned in a special file with extension *pds (see the documentation) which consists of lines like this: ATOM CA ALA 2.0 which is read as “the Calpha atom of Alanine has radius 2.0 Angstroms”. Here we provide for testing of the file rashin.pds where the radii are assigned according to [12].
The output file contains only recognized atoms. Atoms that were not recognized (are not part of mapping) are written to a separate log file allowing the user to review and correct the mapping files later.
2. The Language. Implementing the program in C is a natural first step when translating a program into OpenCL. This implementation is rewritten line-by-line from the original FORTRAN version of ARVO.
3. OpenCL implementation. OpenCL [14] is an open standard for parallel programming of heterogeneous systems. Unlike other parallelization technologies like CUDA [15] or ATI Stream [16] which are interconnected with specific hardware (produced by NVIDIA or ATI, respectively), OpenCL is vendor-independent, and programs written in OpenCL can be run on any hardware of companies supporting this standard, including AMD, INTEL, and NVIDIA. Programs written in OpenCL can be run without much change both on CPUs and GPUs.
Improvements as compared with the original version: Support for files in the format as created by ‘input_structure’; input of parameters (name of input file) via command line; dynamic size of arrays—removal of the necessity to re-compile the program after any change in size of structures; memory allocation according to the real demands of the application; replacing north pole test by slight reduction of the radius (see below).
To compile an OpenCL program, one needs to download and install the appropriate driver and software development kit (SDK). The program itself consists of two parts: a part running on the CPU and a part running on the GPU. The CPU initializes communication between the computer and the GPU, load data, processes and exports results. The GPU does the parallel part of calculation, consisting of the search for neighboring atoms and calculating the contribution of the area and volume of the individual atom to the total area and volume of the molecule. For details of the algorithm, please read Refs. [3,4].
In programming using OpenCL, more attention must be given to memory used than in a classical approach. Memory of the device is usually limited and therefore, some changes to the original algorithm are necessary. First, unlike in the FORTRAN version of the program, no structures containing the list of neighbor atoms are created. The search for the neighbors is done on-line, when the calculation of the contribution from individual atoms is being performed. Table 1Comparison of volumes and surface areas of different proteins obtained by original ARVO and by the new version. Different strategies for dealing with the “north pole” are applied. The first column contains the PDB ID of the protein and the number of atoms. Second column contains the volume of the protein obtained with original ARVO (upper number) and the difference with the new approach (lower number). Third column contains the same as in the second column for the surface area. Fourth column contains the number of rotations of the molecule in original ARVO (upper number) and the number of atoms whose radii have been reduced in the new version (lower number). Fifth column contains the relative errors for the volume (upper number) and the area (lower number).Protein atoms #Volume diffArea diffRotat. reduct.δvolume (%) δarea (%)3rn323,951.1804696858.3226363−1.04⋅10−7957−0.000025−0.0000071−1.02⋅10−73cyt40,875.86739511,455.4748323−3.85⋅10−61600−0.0015750.00141541.24⋅10−42act38,608.2430389054.00735041.28⋅10−416570.0494800.00173321.91⋅10−52brd43,882.73547910,918.20352921−7.84⋅10−71738−0.000344−0.0000971−8.88⋅10−78tln56,698.98888312,496.97806415−1.70⋅10−62455−0.0009660.00045943.67⋅10−61rr8105,841.50219227,983.15977218−6.60⋅10−74108−0.000699−0.0002144−7.65⋅10−71xi51743,445.092001863,139.88270314.42⋅10−715,6960.0077090.00007018.11⋅10−9
The strategy behind the North Pole check and molecule rotation [4, Sec. 4.7] has been changed. If during the north pole test, the north pole of the active sphere lies close to the surface of a neighboring sphere, the radius of such a neighboring sphere is multiplied by 0.9999 instead of rotating the whole molecule. This allows the algorithm to continue normally. Changing the radius of one atom changes the area and the volume of this atom by 0.02% and 0 Introduction of Graphical Processing Units (GPUs) and computing using GPUs in recent years opened possibilities for simple parallelization of programs. In this update, we present the modernized version of program ARVO [J. Busa, J. Dzurina, E. Hayryan, S. Hayryan, C.-K. Hu, J. Plavka, I. Pokorny, J. Skivanek, M.-C. Wu, Comput. Phys. Comm. 165 (2005) 59]. The whole package has been rewritten in the C language and parallelized using OpenCL. Some new tricks have been added to the algorithm in order to save memory much needed for efficient usage of graphical cards. A new tool called 'input_structure' was added for conversion of pdb files into files suitable for work with the C and OpenCL version of ARVO. New version program summary Program title: ARVO-CL Catalog identifier: ADUL_v2_0 Program summary URL: http://cpc.cs.qub.ac.uk/summaries/ADUL_v2_0.html Program obtainable from: CPC Program Library, Queen's University, Belfast, N. Ireland Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.html No. of lines in distributed program, including test data, etc.: 11834 No. of bytes in distributed program, including test data, etc.: 182528 Distribution format: tar.gz Programming language: C, OpenCL. Computer: PC Pentium; SPP'2000. Operating system: All OpenCL capable systems. Has the code been vectorized or parallelized?: Parallelized using GPUs. A serial version (non GPU) is also included in the package. Classification: 3. External routines: cl.hpp (http://www.khronos.org/registry/cl/api/1.1/cl.hpp) Catalog identifier of previous version: ADUL_v1_0 Journal reference of previous version: Comput. Phys. Comm. 165(2005)59 Does the new version supercede the previous version?: Yes Nature of problem: Molecular mechanics computations, continuum percolation Solution method: Numerical algorithm based on the analytical formulas, after using the stereographic transformation. Reasons for new version: During the past decade we have published a number of protein structure related algorithms and software packages [1,2,3,4,5,6] which have received considerable attention from researchers and interesting applications of such packages have been found. For example, ARVO [4] has been used to find that ratios of volume V to surface area A, for proteins in Protein Data Bank (PDB) distribute in a narrow range [7]. Such a result is useful for finding native structures of proteins. Therefore, we consider that there is a demand to revise and modernize these tools and to make them more efficient. Here we present the new version of the ARVO package. The original ARVO package was written in the FORTRAN language. One of the reasons for the new version is to rewrite it in C in order to make it more friendly to the young researchers who are not familiar with FORTRAN. Another, more important reason is to use the possibilities for speeding-up provided by modern graphical cards. We also want to eliminate the necessity of re-compiling the program for every molecule. For this purpose, we have added the possibility of using general pdb [8] files as an input. Once compiled, the program can receive any number of input files successively. Also, we found it necessary to go through the algorithm and to make some tricks for avoiding unnecessary memory usage so that the package becomes more efficient. Summary of revisions: 1. New tool. ARVO is designed to calculate the volume and accessible surface area of an arbitrary system of overlapping spheres (representing atoms), the biomolecules being just one albeit important, application. The user provides the coordinates and radii of the spheres as well as the radius of the probe sphere (water molecule for biomolecules). In the old version of ARVO the input of data was organized immediately in the code, which made it necessary to re-compile the program after every change in the input data. In the current version a module called 'input_structure' has been created to input the data from an independent external file. The coordinates and radii are stored in the file with extension *.ats (see the directory 'input' in the package). Each line in the file corresponds to one sphere (atom) and has the format The first three numbers are the () coordinates of the atom and the last one is the radius. It is important to remember that the radius of the probe sphere must be already added to this number. In the above example, the value 2.800 is obtained by the formula "sphere radius+probe sphere radius". In the case of the arbitrary system of spheres the file *.ats is created by the user. In the case of proteins the 'input_structure' takes as an input a file in the format compatible with Protein Data Bank (pdb) format [8] and creates a corresponding *.ats file. It also assigns automatically, radii to individual spheres and (optionally) adds to all radii the probe sphere (water molecule) radius. As output, it produces a file containing coordinates of spheres together with radii. This file works automatically as an input for ARVO. Using an external tool allows users to create their own mappings of atoms and radii without the need to re-compile the tool 'input_structure' or program ARVO. It is again the user's responsibility to assign proper radii to each type of atom. One can use any of the published standard sets of radii (see for example, [9,10,11,12,13]). Alternatively, the user can assign his own values for radii immediately in the module input_structure. The radii are assigned in a special file with extension *pds (see the documentation) which consists of lines like this: ATOM CA ALA 2.0 which is read as "the atom of Alanine has radius 2.0 Angstroms". Here we provide for testing of the file rashin.pds where the radii are assigned according to [12]. The output file contains only recognized atoms. Atoms...  | 
    
| Author | Hu, Chin-Kun Wu, Ming-Chya Hayryan, Shura Buša, Ján  | 
    
| Author_xml | – sequence: 1 givenname: Ján surname: Buša fullname: Buša, Ján email: jan.busa.2@tuke.sk organization: Institute of Physics, Academia Sinica, Nankang, Taipei 11529, Taiwan – sequence: 2 givenname: Shura surname: Hayryan fullname: Hayryan, Shura email: shura@phys.sinica.edu.tw organization: Institute of Physics, Academia Sinica, Nankang, Taipei 11529, Taiwan – sequence: 3 givenname: Ming-Chya surname: Wu fullname: Wu, Ming-Chya email: mcwu@ncu.edu.tw organization: Institute of Physics, Academia Sinica, Nankang, Taipei 11529, Taiwan – sequence: 4 givenname: Ján surname: Buša fullname: Buša, Ján email: jan.busa@tuke.sk organization: Faculty of Electrical Engineering and Informatics, Technical University of Košice, 040 01 Košice, Slovak Republic – sequence: 5 givenname: Chin-Kun surname: Hu fullname: Hu, Chin-Kun email: huck@phys.sinica.edu.tw organization: Institute of Physics, Academia Sinica, Nankang, Taipei 11529, Taiwan  | 
    
| BookMark | eNp9kc2O0zAURi00SHQGHoCdl2wS7CZxElhVFX9SpUpoYGs5N9eDi2tnbKdidjwEj8FT8SQ4LSsWs7J0_R37s881uXLeISEvOSs54-L1oYQJyjXj65LVJeP9E7LiXdsX676ur8iKMc6KWjTNM3Id44Ex1rZ9tSK_N5-_7ovt7g29_YZ0P6Hb7ugJQzTeUa9pytMlQicF39Ud0j8_f9GNo6i1AYMu0eS9pdoHCv44zcm4uzOkADBGM1ikcQ5aQR4FVFS58byPP8DOI4705O18xOWuKfiExkV6MktO2YdkQFmK97NKuU98Tp5qZSO--LfekC_v391uPxa7_YdP282ugKpiqRig6vqm6zT2uhsaMWArYMS6aXA9NIhMoIIauRaglaiwg76FrhWsabmqcahuyKvLubnR_YwxyaOJgNYqh36OkouGV33-QJGj7SUKwccYUEsw6dw2BWWs5EwufuRBZj9y8SNZLbOfTPL_yCmYowoPjzJvLwzm158MBhkXCYCjCQhJjt48Qv8FxyKuKA | 
    
| CitedBy_id | crossref_primary_10_1093_mnras_stad1146 crossref_primary_10_1016_j_cpc_2019_107003 crossref_primary_10_1021_acs_jctc_2c01306 crossref_primary_10_1088_1742_6596_604_1_012009  | 
    
| Cites_doi | 10.1016/j.cpc.2010.08.032 10.1146/annurev.bb.06.060177.001055 10.1002/jcc.20125 10.1209/0295-5075/96/68005 10.1016/j.cpc.2005.10.013 10.1021/bi00360a021 10.1016/0022-2836(71)90324-X 10.1016/S0010-4655(01)00197-7 10.1016/j.cpc.2004.08.002 10.1038/248338a0 10.1002/jcc.21060 10.1016/0022-2836(73)90011-9  | 
    
| ContentType | Journal Article | 
    
| Copyright | 2012 Elsevier B.V. | 
    
| Copyright_xml | – notice: 2012 Elsevier B.V. | 
    
| DBID | AAYXX CITATION 7SC 7U5 8FD H8D JQ2 L7M L~C L~D  | 
    
| DOI | 10.1016/j.cpc.2012.04.019 | 
    
| DatabaseName | CrossRef Computer and Information Systems Abstracts Solid State and Superconductivity Abstracts Technology Research Database Aerospace Database ProQuest Computer Science Collection Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts  Academic Computer and Information Systems Abstracts Professional  | 
    
| DatabaseTitle | CrossRef Aerospace Database Technology Research Database Computer and Information Systems Abstracts – Academic ProQuest Computer Science Collection Computer and Information Systems Abstracts Solid State and Superconductivity Abstracts Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Professional  | 
    
| DatabaseTitleList | Aerospace Database  | 
    
| DeliveryMethod | fulltext_linktorsrc | 
    
| Discipline | Physics | 
    
| EISSN | 1879-2944 | 
    
| EndPage | 2497 | 
    
| ExternalDocumentID | 10_1016_j_cpc_2012_04_019 S0010465512001580  | 
    
| GroupedDBID | --K --M -~X .DC .~1 0R~ 1B1 1RT 1~. 1~5 29F 4.4 457 4G. 5GY 5VS 7-5 71M 8P~ 9JN AACTN AAEDT AAEDW AAIAV AAIKJ AAKOC AALRI AAOAW AAQFI AAQXK AARLI AAXUO AAYFN ABBOA ABFNM ABMAC ABNEU ABQEM ABQYD ABXDB ABYKQ ACDAQ ACFVG ACGFS ACLVX ACNNM ACRLP ACSBN ACZNC ADBBV ADECG ADEZE ADJOM ADMUD AEBSH AEKER AENEX AFKWA AFTJW AFZHZ AGHFR AGUBO AGYEJ AHHHB AHZHX AI. AIALX AIEXJ AIKHN AITUG AIVDX AJBFU AJOXV AJSZI ALMA_UNASSIGNED_HOLDINGS AMFUW AMRAJ AOUOD ASPBG ATOGT AVWKF AXJTR AZFZN BBWZM BKOJK BLXMC CS3 DU5 EBS EFJIC EFLBG EJD EO8 EO9 EP2 EP3 F5P FDB FEDTE FGOYB FIRID FLBIZ FNPLU FYGXN G-2 G-Q GBLVA GBOLZ HLZ HME HMV HVGLF HZ~ IHE IMUCA J1W KOM LG9 LZ4 M38 M41 MO0 N9A NDZJH O-L O9- OAUVE OGIMB OZT P-8 P-9 P2P PC. Q38 R2- RIG ROL RPZ SBC SCB SDF SDG SES SEW SHN SPC SPCBC SPD SPG SSE SSK SSQ SSV SSZ T5K TN5 UPT VH1 WUQ ZMT ~02 ~G- AATTM AAXKI AAYWO AAYXX ABJNI ABWVN ACLOT ACRPL ACVFH ADCNI ADNMO AEIPS AEUPX AFJKZ AFPUW AGQPQ AIGII AIIUN AKBMS AKRWK AKYEP ANKPU APXCP CITATION EFKBS ~HD 7SC 7U5 8FD H8D JQ2 L7M L~C L~D  | 
    
| ID | FETCH-LOGICAL-c330t-bc389588fe9f8b56be76cde455e2b5ee06eac4e1f6cfa63e8c97c8760571a4eb3 | 
    
| IEDL.DBID | .~1 | 
    
| ISSN | 0010-4655 | 
    
| IngestDate | Thu Oct 02 05:48:42 EDT 2025 Thu Apr 24 23:11:57 EDT 2025 Wed Oct 01 04:08:35 EDT 2025 Fri Feb 23 02:30:55 EST 2024  | 
    
| IsPeerReviewed | true | 
    
| IsScholarly | true | 
    
| Issue | 11 | 
    
| Keywords | Proteins OpenCL package Stereographic projection ARVO Excluded volume Solvent accessible area  | 
    
| Language | English | 
    
| License | https://www.elsevier.com/tdm/userlicense/1.0 | 
    
| LinkModel | DirectLink | 
    
| MergedId | FETCHMERGED-LOGICAL-c330t-bc389588fe9f8b56be76cde455e2b5ee06eac4e1f6cfa63e8c97c8760571a4eb3 | 
    
| Notes | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 23  | 
    
| PQID | 1651397796 | 
    
| PQPubID | 23500 | 
    
| PageCount | 4 | 
    
| ParticipantIDs | proquest_miscellaneous_1651397796 crossref_citationtrail_10_1016_j_cpc_2012_04_019 crossref_primary_10_1016_j_cpc_2012_04_019 elsevier_sciencedirect_doi_10_1016_j_cpc_2012_04_019  | 
    
| ProviderPackageCode | CITATION AAYXX  | 
    
| PublicationCentury | 2000 | 
    
| PublicationDate | November 2012 2012-11-00 20121101  | 
    
| PublicationDateYYYYMMDD | 2012-11-01 | 
    
| PublicationDate_xml | – month: 11 year: 2012 text: November 2012  | 
    
| PublicationDecade | 2010 | 
    
| PublicationTitle | Computer physics communications | 
    
| PublicationYear | 2012 | 
    
| Publisher | Elsevier B.V | 
    
| Publisher_xml | – name: Elsevier B.V | 
    
| References | 10.1016/j.cpc.2012.04.019_br000035 10.1016/j.cpc.2012.04.019_br000025 10.1016/j.cpc.2012.04.019_br000015 10.1016/j.cpc.2012.04.019_br000005 10.1016/j.cpc.2012.04.019_br000020 10.1016/j.cpc.2012.04.019_br000075 10.1016/j.cpc.2012.04.019_br000010 10.1016/j.cpc.2012.04.019_br000065 10.1016/j.cpc.2012.04.019_br000055 10.1016/j.cpc.2012.04.019_br000045 10.1016/j.cpc.2012.04.019_br000060 10.1016/j.cpc.2012.04.019_br000050 10.1016/j.cpc.2012.04.019_br000040 10.1016/j.cpc.2012.04.019_br000030 10.1016/j.cpc.2012.04.019_br000080 10.1016/j.cpc.2012.04.019_br000070  | 
    
| References_xml | – ident: 10.1016/j.cpc.2012.04.019_br000030 doi: 10.1016/j.cpc.2010.08.032 – ident: 10.1016/j.cpc.2012.04.019_br000050 doi: 10.1146/annurev.bb.06.060177.001055 – ident: 10.1016/j.cpc.2012.04.019_br000015 doi: 10.1002/jcc.20125 – ident: 10.1016/j.cpc.2012.04.019_br000040 – ident: 10.1016/j.cpc.2012.04.019_br000035 doi: 10.1209/0295-5075/96/68005 – ident: 10.1016/j.cpc.2012.04.019_br000010 doi: 10.1016/j.cpc.2005.10.013 – ident: 10.1016/j.cpc.2012.04.019_br000080 – ident: 10.1016/j.cpc.2012.04.019_br000060 doi: 10.1021/bi00360a021 – ident: 10.1016/j.cpc.2012.04.019_br000045 doi: 10.1016/0022-2836(71)90324-X – ident: 10.1016/j.cpc.2012.04.019_br000005 doi: 10.1016/S0010-4655(01)00197-7 – ident: 10.1016/j.cpc.2012.04.019_br000020 doi: 10.1016/j.cpc.2004.08.002 – ident: 10.1016/j.cpc.2012.04.019_br000065 doi: 10.1038/248338a0 – ident: 10.1016/j.cpc.2012.04.019_br000025 doi: 10.1002/jcc.21060 – ident: 10.1016/j.cpc.2012.04.019_br000055 doi: 10.1016/0022-2836(73)90011-9 – ident: 10.1016/j.cpc.2012.04.019_br000075 – ident: 10.1016/j.cpc.2012.04.019_br000070  | 
    
| SSID | ssj0007793 | 
    
| Score | 2.0778039 | 
    
| Snippet | Introduction of Graphical Processing Units (GPUs) and computing using GPUs in recent years opened possibilities for simple parallelization of programs. In this... | 
    
| SourceID | proquest crossref elsevier  | 
    
| SourceType | Aggregation Database Enrichment Source Index Database Publisher  | 
    
| StartPage | 2494 | 
    
| SubjectTerms | ARVO Atomic radius Computation Excluded volume Format Mathematical analysis Mathematical models OpenCL package Packages Proteins Solvent accessible area Stereographic projection  | 
    
| Title | ARVO-CL: The OpenCL version of the ARVO package — An efficient tool for computing the accessible surface area and the excluded volume of proteins via analytical equations | 
    
| URI | https://dx.doi.org/10.1016/j.cpc.2012.04.019 https://www.proquest.com/docview/1651397796  | 
    
| Volume | 183 | 
    
| hasFullText | 1 | 
    
| inHoldings | 1 | 
    
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVESC databaseName: Baden-Württemberg Complete Freedom Collection (Elsevier) customDbUrl: eissn: 1879-2944 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0007793 issn: 0010-4655 databaseCode: GBLVA dateStart: 20110101 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier – providerCode: PRVESC databaseName: Elsevier Freedom Collection customDbUrl: eissn: 1879-2944 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0007793 issn: 0010-4655 databaseCode: ACRLP dateStart: 19950101 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier – providerCode: PRVESC databaseName: Elsevier ScienceDirect customDbUrl: eissn: 1879-2944 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0007793 issn: 0010-4655 databaseCode: .~1 dateStart: 19950101 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier – providerCode: PRVESC databaseName: Elsevier SD Freedom Collection Journals [SCFCJ] customDbUrl: eissn: 1879-2944 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0007793 issn: 0010-4655 databaseCode: AIKHN dateStart: 19950101 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier – providerCode: PRVLSH databaseName: Elsevier Journals customDbUrl: mediaType: online eissn: 1879-2944 dateEnd: 99991231 omitProxy: true ssIdentifier: ssj0007793 issn: 0010-4655 databaseCode: AKRWK dateStart: 19690701 isFulltext: true providerName: Library Specific Holdings  | 
    
| link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV3NbtQwELaqIiQuiF9RKNUgcUJKm934J8tttaJa2FKkikJvln-lQJQs3d2qXBAPwWPwVDwJM04CAqEeOEV27CTyON98Y49nGHsqZfQ2N2VmoioyHnOVmXGhMj5W1qjcx-hpR_f1sZyf8ldn4myLzYazMORW2WN_h-kJrfuag340D5ZVRWd8aX8SNT65BYmS7HbOFWUx2P_y281DqT7wLuINtR52NpOPl1tSFENaDuT7KdjOv3XTXyidVM_hLXaz54ww7T7rNtsKzR12PfluutVd9n168u5NNjt6DihzIA-R2RFcdOtg0EZAigfUBNA8_ojwAT--foNpAyFFj0ClA-u2rQHZK7iU4wG1WepkUjLFytYBVpvzaBxWIccE0_h0P1y6euODhw7i6F0p7EPVrOCionam_pzWyiF86kKKr-6x08MXb2fzrE_CkLmiyNeZdUhpRFnGMImlFdIGJZ0PXIgwtiKEXCJ08zCK0kUji1C6iXIIscgDR4ajqX6fbTdtEx4wUKOxRT5RqAmawi63SPa8sB5LSion_A7Lh-HXro9QTokyaj24on3QKDFNEtM51yixHfbsV5dlF57jqsZ8kKn-Y45pVB9XdXsyyF_jv0cbKqYJ7WalR1IkAj2RD__v0Y_YDSp1Zxt32fb6fBMeI8lZ2700i_fYtenLxfyYrouT94uf1Fv_UQ | 
    
| linkProvider | Elsevier | 
    
| linkToHtml | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV3NbtQwELaqogouqPyJ0gKDxAkpbTbxT5bbakW10G0rVS3qzfKvFIiSbbNbtRfEQ_AYPBVPwthJQCDUA8c44yTyON98Y49nCHnNubc6VUWivMgT6lORqCwXCc2EViK13tuwo3t4xGdn9MM5O18j0-EsTAir7LG_w_SI1n3LXj-ae4uyDGd8w_4kWvwQFsQK9NvvUJaJ4IHtfvkd5yFEn3kXASeID1ubMcjLLEIaw7AeSHdjtp1_G6e_YDranv1Ncr8njTDpvusBWXP1Q7IRgzdN-4h8n5x8PE6m87eASocQIjKdw1W3EAaNB-R4EEQA_ePPiB_w4-s3mNTgYvoItDqwbJoKkL6CiUUe0JzFTipWUyx15aBdXXplsAlJJqjaxvvu2lQr6yx0GBfeFfM-lHULV2WQU9VNXCwHd9HlFG8fk7P9d6fTWdJXYUhMnqfLRBvkNKwovBv7QjOuneDGOsqYyzRzLuWI3dSNPDde8dwVZiwMYiwSwZGi6Ks_Iet1U7unBMQo00gocjFGX9ikGtmeZdrileDCMLtF0mH4pelTlIdKGZUcYtE-SdSYDBqTKZWosS3y5leXRZef4zZhOuhU_jHJJNqP27q9GvQv8ecLOyqqds2qlSPOIoMe82f_9-iX5O7s9HAu5--PDrbJvXCnO-i4Q9aXlyv3HBnPUr-IM_ontF7_Qw | 
    
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=ARVO-CL%3A+The+OpenCL+version+of+the+ARVO+package+-+An+efficient+tool+for+computing+the+accessible+surface+area+and+the+excluded+volume+of+proteins+via+analytical+equations&rft.jtitle=Computer+physics+communications&rft.au=Busa%2C+Jan+Jr&rft.au=Hayryan%2C+Shura&rft.au=Wu%2C+Ming-Chya&rft.au=Busa%2C+Jan&rft.date=2012-11-01&rft.issn=0010-4655&rft.volume=183&rft.issue=11&rft.spage=2494&rft.epage=2497&rft_id=info:doi/10.1016%2Fj.cpc.2012.04.019&rft.externalDBID=NO_FULL_TEXT | 
    
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0010-4655&client=summon | 
    
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0010-4655&client=summon | 
    
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0010-4655&client=summon |