Skip to content

Commit d0394b1

Browse files
author
Kent Knox
committed
Merge branch 'develop'
Bump version to v2.2 Conflicts: README.md src/CMakeLists.txt
2 parents e7b02b4 + 2217b68 commit d0394b1

36 files changed

+767
-337
lines changed

.travis.yml

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
language: cpp
2+
3+
compiler:
4+
- gcc
5+
6+
before_install:
7+
- sudo apt-get update -qq
8+
- sudo apt-get install -qq fglrx opencl-headers libboost-program-options-dev libfftw3-dev libgtest-dev
9+
# Uncomment below to help verify the installs above work
10+
# - ls -la /usr/lib/libboost*
11+
# - ls -la /usr/include/boost
12+
# - ls -la /usr/src/gtest
13+
14+
install:
15+
- mkdir -p bin/gTest
16+
- cd bin/gTest
17+
- cmake -DCMAKE_BUILD_TYPE=Release /usr/src/gtest
18+
- make
19+
- sudo mv libg* /usr/lib
20+
21+
before_script:
22+
- cd ${TRAVIS_BUILD_DIR}
23+
- mkdir -p bin/clFFT
24+
- cd bin/clFFT
25+
- cmake -DBoost_NO_SYSTEM_PATHS=OFF ../../src
26+
27+
script:
28+
- make install
29+
# - ls -Rla package
30+
# Run a simple test to validate that the build works; CPU device in a VM
31+
- cd package/bin
32+
- export LD_LIBRARY_PATH=${TRAVIS_BUILD_DIR}/bin/clFFT/package/lib64:${LD_LIBRARY_PATH}
33+
- ./Client -i
34+
35+
after_success:
36+
- cd ${TRAVIS_BUILD_DIR}/bin/clFFT
37+
- make package
38+
39+
notifications:
40+
email:
41+
42+
on_success: change
43+
on_failure: always
44+

CHANGELOG

-31
Original file line numberDiff line numberDiff line change
@@ -171,34 +171,3 @@ For example:
171171
./clfft.Sample -iv
172172
- Watch for the version strings to print out; watch for
173173
'Client Test *****PASS*****' to print out.
174-
_______________________________________________________________________________
175-
(C) 2010-2013 Advanced Micro Devices, Inc. All rights reserved. AMD, the AMD
176-
Arrow logo, ATI, the ATI logo, Radeon, FireStream, FireGL, Catalyst, and
177-
combinations thereof are trademarks of Advanced Micro Devices, Inc. Microsoft
178-
(R), Windows, and Windows Vista (R) are registered trademarks of Microsoft
179-
Corporation in the U.S. and/or other jurisdictions. OpenCL and the OpenCL logo
180-
are trademarks of Apple Inc. used by permission by Khronos. Other names are for
181-
informational purposes only and may be trademarks of their respective owners.
182-
183-
The contents of this document are provided in connection with Advanced Micro
184-
Devices, Inc. ("AMD") products. AMD makes no representations or warranties with
185-
respect to the accuracy or completeness of the contents of this publication and
186-
reserves the right to make changes to specifications and product descriptions
187-
at any time without notice. The information contained herein may be of a
188-
preliminary or advance nature and is subject to change without notice. No
189-
license, whether express, implied, arising by estoppel or otherwise, to any
190-
intellectual property rights is granted by this publication. Except as set forth
191-
in AMD's Standard Terms and Conditions of Sale, AMD assumes no liability
192-
whatsoever, and disclaims any express or implied warranty, relating to its
193-
products including, but not limited to, the implied warranty of
194-
merchantability, fitness for a particular purpose, or infringement of any
195-
intellectual property right.
196-
197-
AMD's products are not designed, intended, authorized or warranted for use as
198-
components in systems intended for surgical implant into the body, or in other
199-
applications intended to support or sustain life, or in any other application
200-
in which the failure of AMD's product could create a situation where personal
201-
injury, death, or severe property or environmental damage may occur. AMD
202-
reserves the right to discontinue or make changes to its products at any time
203-
without notice.
204-
_______________________________________________________________________________

README.md

+97-27
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,87 @@
11
clFFT
22
=====
3+
[![Build Status](https://travis-ci.org/clMathLibraries/clFFT.png)](https://travis-ci.org/clMathLibraries/clFFT)
34

4-
clMath is a software library containing FFT and BLAS functions written in OpenCL. In addition to GPU devices, the libraries also support running on CPU devices to facilitate debugging and multicore programming.
5+
clMath is a software library containing FFT and BLAS functions written
6+
in OpenCL. In addition to GPU devices, the libraries also support
7+
running on CPU devices to facilitate debugging and multicore
8+
programming.
59

6-
<a href="http://developer.amd.com/tools-and-sdks/heterogeneous-computing/amd-accelerated-parallel-processing-math-libraries/">APPML 1.10</a> is the most current generally available version of the library, and pre-built binaries are available for download on both Linux and Windows platforms.
10+
clMath 2.1 is the latest version and is available as source only.
11+
clMath's predecessor APPML 1.10 has pre-built binaries available for
12+
download on both Linux and Windows platforms.
713

814
## Introduction to clFFT
915

10-
The FFT is an implementation of the Discrete Fourier Transform (DFT) that makes use of symmetries in the FFT definition to reduce the mathematical intensity required from O(N<sup>2</sup>) to O(N log<sub>2</sub>( N )) when the sequence length N is the product of small prime factors. Currently, there is no standard API for FFT routines. Hardware vendors usually provide a set of high-performance FFTs optimized for their systems: no two vendors employ the same interfaces for their FFT routines. clFFT provides a set of FFT routines that are optimized for AMD graphics processors, but also are functional across CPU and other compute devices.
16+
The FFT is an implementation of the Discrete Fourier Transform (DFT)
17+
that makes use of symmetries in the FFT definition to reduce the
18+
mathematical intensity required from O(N2) to O(N log2( N )) when the
19+
sequence length N is the product of small prime factors. Currently,
20+
there is no standard API for FFT routines. Hardware vendors usually
21+
provide a set of high-performance FFTs optimized for their systems: no
22+
two vendors employ the same interfaces for their FFT routines. clFFT
23+
provides a set of FFT routines that are optimized for AMD graphics
24+
processors, but also are functional across CPU and other compute
25+
devices.
1126

12-
The clFFT library is an open source OpenCL library implementation of discrete Fast Fourier Transforms. It:
27+
The clFFT library is an open source OpenCL library implementation of
28+
discrete Fast Fourier Transforms. It:
1329

14-
* Provides a fast and accurate platform for calculating discrete FFTs.
15-
* Works on CPU or GPU backends.
16-
* Supports in-place or out-of-place transforms.
17-
* Supports 1D, 2D, and 3D transforms with a batch size that can be greater than 1.
18-
* Supports planar (real and complex components in separate arrays) and interleaved (real and complex components as a pair contiguous in memory) formats.
19-
* Supports dimension lengths that can be any mix of powers of 2, 3, and 5.
20-
* Supports single and double precision floating point formats.
30+
- Provides a fast and accurate platform for calculating discrete FFTs.
31+
32+
- Works on CPU or GPU backends.
33+
34+
- Supports in-place or out-of-place transforms.
35+
36+
- Supports 1D, 2D, and 3D transforms with a batch size that can be
37+
greater than 1.
38+
39+
- Supports planar (real and complex components in separate arrays) and
40+
interleaved (real and complex components as a pair contiguous in
41+
memory) formats.
42+
43+
- Supports dimension lengths that can be any mix of powers of 2, 3,
44+
and 5.
45+
46+
- Supports single and double precision floating point formats.
2147

2248
## clFFT library user documentation
23-
[Library and API documentation]( http://clmathlibraries.github.io/clFFT/ ) for developers is available online as a GitHub Pages website
49+
50+
[Library and API documentation][] for developers is available online as
51+
a GitHub Pages website
52+
53+
### Google Groups
54+
55+
Two mailing lists have been created for the clMath projects:
56+
57+
- [[email protected]][] - group whose focus is to answer
58+
questions on using the library or reporting issues
59+
60+
- [[email protected]][] - group whose focus is for
61+
developers interested in contributing to the library code itself
2462

2563
## clFFT Wiki
26-
The [project wiki](https://github.com/clMathLibraries/clFFT/wiki) contains helpful documentation, including a [build primer](https://github.com/clMathLibraries/clFFT/wiki/Build)
64+
65+
The [project wiki][[email protected]] contains helpful
66+
documentation, including a [build
67+
2768

2869
## Contributing code
29-
Please refer to and read the [Contributing](CONTRIBUTING.md) document for guidelines on how to contribute code to this open source project
70+
71+
Please refer to and read the [Contributing][] document for guidelines on
72+
how to contribute code to this open source project. The code in the
73+
/master branch is considered to be stable, and all pull-requests should
74+
be made against the /develop branch.
3075

3176
## License
32-
The source for clFFT is licensed under the [Apache License, Version 2.0]( http://www.apache.org/licenses/LICENSE-2.0 )
77+
78+
The source for clFFT is licensed under the [Apache License, Version
79+
2.0][]
3380

3481
## Example
35-
The simple example below shows how to use clFFT to compute an simple 1D forward transform
3682

83+
The simple example below shows how to use clFFT to compute an simple 1D
84+
forward transform
3785
```c
3886
#include <stdlib.h>
3987

@@ -122,21 +170,43 @@ int main( void )
122170
```
123171
124172
## Build dependencies
173+
125174
### Library for Windows
126-
* Windows® 7/8
127-
* Visual Studio 2010 SP1, 2012
128-
* Latest CMake
129-
* An OpenCL SDK, such as APP SDK 2.8
175+
176+
- Windows® 7/8
177+
178+
- Visual Studio 2010 SP1, 2012
179+
180+
- Latest CMake
181+
182+
- An OpenCL SDK, such as APP SDK 2.9
130183
131184
### Library for Linux
132-
* GCC 4.6 and onwards
133-
* Latest CMake
134-
* An OpenCL SDK, such as APP SDK 2.8
185+
186+
- GCC 4.6 and onwards
187+
188+
- Latest CMake
189+
190+
- An OpenCL SDK, such as APP SDK 2.9
191+
192+
### Library for Mac OSX
193+
194+
- Recommended to generate Unix makefiles with cmake
135195
136196
### Test infrastructure
137-
* Latest Googletest
138-
* Latest FFTW
139-
* Latest Boost
197+
198+
- Googletest v1.6
199+
200+
- Latest FFTW
201+
202+
- Latest Boost
140203
141204
### Performance infrastructure
142-
* Python
205+
206+
- Python
207+
208+
[Library and API documentation]: http://clmathlibraries.github.io/clFFT/
209+
[[email protected]]: https://github.com/clMathLibraries/clFFT/wiki
210+
[[email protected]]: https://github.com/clMathLibraries/clFFT/wiki/Build
211+
[Contributing]: CONTRIBUTING.md
212+
[Apache License, Version 2.0]: http://www.apache.org/licenses/LICENSE-2.0

doc/clFFT.doxy

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ DOXYFILE_ENCODING = UTF-8
2626
# identify the project. Note that if you do not use Doxywizard you need
2727
# to put quotes around the project name if it contains spaces.
2828

29-
PROJECT_NAME = clMathFft
29+
PROJECT_NAME = clFFT
3030

3131
# The PROJECT_NUMBER tag can be used to enter a project or revision number.
3232
# This could be handy for archiving the generated documentation or

0 commit comments

Comments
 (0)