From ab0dbbb3d0d223cbb728a1dc722f233bcccae272 Mon Sep 17 00:00:00 2001 From: shrekshao Date: Thu, 27 Aug 2015 13:19:37 -0400 Subject: [PATCH 1/3] change_name --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index a51deff..d8ef0bc 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -11,7 +11,7 @@ */ int main(int argc, char* argv[]) { // TODO: Change this line to use your name! - m_yourName = "TODO: YOUR NAME HERE"; + m_yourName = "Shuai Shao (Shrek)"; if (init(argc, argv)) { mainLoop(); From a3f6afca4760f625d5b4011859ae0df5269104c2 Mon Sep 17 00:00:00 2001 From: shrekshao Date: Thu, 27 Aug 2015 13:43:15 -0400 Subject: [PATCH 2/3] screenshots --- images/proj0_program.png | Bin 0 -> 50461 bytes images/proj1_analyze.png | Bin 0 -> 80657 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 images/proj0_program.png create mode 100644 images/proj1_analyze.png diff --git a/images/proj0_program.png b/images/proj0_program.png new file mode 100644 index 0000000000000000000000000000000000000000..50c109364979b50ac60726eb747ba4f79e3f9fd3 GIT binary patch literal 50461 zcmXuKcRbtg_dedfTC`PEl@>)?vu5quZ?#v>BpU?O4`2F#G+_~?+o_RdaIoG+a>)bIW03C)~9Jj7qxx%2Qt7&%S%C%>g z&y^ehU7q;gVf}TvT!oqGytq<5^l<%hbKOwa%Ev{z2^zD@7+Y*+zXJeU5lmU*+y!Cpme12i~97}B2@ z8i13NGaG{NPTgNRcKbadj>iW&F3xxg-c96ighwx>RRjhtY@H$5*)i@$#9bX=MdY&jDZvDXj@?{;?5|)SN zjJXp~ou5vw%|$zNa?e&N1x0+{dOK^e-PpLi9pz`+1m9?mwe63$ot&L(4Ln-`-j}bo zZ}IJ(ql#Fe9Rgv?)BN(8=&-j(?)LX3VnmMqO*Q7C>F;}G?gpHPtG0K*hQv=>ltSAd z-5<`q_QwG4lN5O>cXqE~p*?Z9f2VBafPP~sC3%%*BoJhmlsW!(DOi0%wSDRQzi_?A zcH%(n#WM1{OX8!G8@Te<)4qMxnp-AzL6VqW(-SWKAY;ChGCQcxa-D?q`RQuM{`UAP z&!;nHw))v-pe_&dVw6q8`Te*1Zsb!5wbMsU{GOdn*8Qm|17qbQ z|JQxLgBH}-x$~Zdd5>JnmXxq2#E2lMuR<7NO@0S)h}D%Mgz(YtyS9WV}aV! z{xm%}FzIgDZaMBJo0CyB`opp;#QDllZiM>nqpI5UptA7tY+%I}swrvVxhdZA(8#nY z->lT0zBHWvh-$%6m*xO`+<_%=K9%LbWjHvN>gCuNP512tY?U1c*>zyxR?5MWM2WaO z0)1KQM@r^+^@?mgXl8qG=HT+LMTf|GFPPis+WK$KVVrq_yE7)eg0EVkm*!~u=v!Vb zIGaT0JJqyq4s3L6-e}(E5>Wc&jR{&)D>`|XtU?<{QFv9iDGON`b?vhzr+;qO=%sS5 zj7NM#KX~TUy6Fq)kk;J^gBX_>aVQ329>@U#&CIp`83Nyyw@2)D`LQB(o3>|R-|9Vf zI_*x<<}x(I4{Q&X6h#3A3i81e|Mdw#B06vEk#`C(wp?n9)){EX~rrfyLd*#1* zjRl2VS&D|9Ci8e?vOGZxBdY~b&B-+sXy@#9x&&IVy17!*UN5dS_rZ~`(^B`3KA1ic z{-a`i8u76r^{?sugUvN^>nI{|NY7i(UoS-O9b8~f%GtRymd$n5Ghn0Yq{iHH<*iOM z;s$;C%WTd%&+yk%AAY)AeLQeq+@87dxw4Rq@+-VPb1U%^d`*9a!1{plV!|@%oz}n} z?hzkBPAxIGbL=zVgT?b(sZo~yHBZc=-gP%gmgl#C{V1G82I9K1vkzHcn?uEjs8=~M zu=fjbN7<}iive{VSRI^f^=C*KAj*Bv4qotGP4;IfBg)pU^YI}%YR2Rth? zK2y)rJ(@`&OqNX(u#qh8YdQfuk4mPrvmFdrz0Qadm8Z@95?(r08pi8#dEP3tcpqF* zMAuB96}9ZY>YUT*L!UWZ#D=)O2+*(J_Aab)RVEm|CIl>BtHJILy%`6cpbn?coY< z)mL(b%fQ!Wd&LGUQt^OJ2z*muQy?{B3n|L!EerC_h?fHiv~Z`pgb-i$zvfAI*(vx} z<4MB`Q99TR@|MaJg}Gr)v4kc(U*D;Kv8?*aG^FF%0AF7Q(|XX~pY1H8A^>+DZS-?4 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�OLrNFjcM;t`;b+~8h>K;2$~I5FVcQVwI-9F) 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 Date: Thu, 27 Aug 2015 13:49:58 -0400 Subject: [PATCH 3/3] readme update --- README.md | 217 ++---------------------------------------------------- 1 file changed, 7 insertions(+), 210 deletions(-) diff --git a/README.md b/README.md index 6871129..1dc0280 100644 --- a/README.md +++ b/README.md @@ -3,220 +3,17 @@ CUDA Getting Started **University of Pennsylvania, CIS 565: GPU Programming and Architecture, Project 0** -* (TODO) YOUR NAME HERE -* Tested on: (TODO) Windows 22, i7-2222 @ 2.22GHz 22GB, GTX 222 222MB (Moore 2222 Lab) +* Shuai Shao (Shrek) +* Tested on: Windows 7, i5-3210M @ 2.50GHz 4.00GB, GeForce GT 640M LE (Personal Laptop) -### (TODO: Your README) +###Screenshots -Include screenshots, analysis, etc. (Remember, this is public, so don't put anything here that you don't want to -share with the world.) ++ program +![screenshot_program](https://github.com/shrekshao/Project0-CUDA-Getting-Started/blob/master/images/proj0_program.png?raw=true "program") -Instructions -============ ++ analysis +![screenshot_analyze](https://github.com/shrekshao/Project0-CUDA-Getting-Started/blob/master/images/proj1_analyze.png?raw=true "analyze") -This is due **Wednesday, September 2**. -**TODO (later): remove all of these instructions**, so that your README -represents your own project. You can always read the instructions on the -original GitHub page. -This project (and all other CUDA projects in this course) requires an NVIDIA -graphics card with CUDA capability. Any card with Compute Capability 2.0 (sm_20) -or greater will work. Gheck your GPU on this [compatibility table](https://developer.nvidia.com/cuda-gpus). -If you do not have a personal machine with these specs, you may use -computers in the SIG Lab *or* machines 1-5 in Moore 100B. -**HOWEVER**: If you need to use the lab computer for your development, you will -not presently be able to do GPU performance profiling. This will be very -important for debugging performance bottlenecks in your program. If you do not -have administrative access to a CUDA-capable machine, please email the TA as -soon as possible to find a solution. - - -## Part 1: Setting up your development environment - -Skip this part if you are developing on a lab computer. - -### Windows - -1. Make sure you are running Windows 7/8/10 and that your NVIDIA drivers are - up-to-date. You will need support for OpenGL 4.0 or better in this course. -2. Install Visual Studio 2013 (**not** 2015). - * 2010/2012 will also work, if you already have one installed. - * http://www.seas.upenn.edu/cets/software/msdn/ - * You need C++ support. None of the optional components are necessary. -3. Install [CUDA 7](https://developer.nvidia.com/cuda-downloads?sid=925343). - * Use the express installation. Make sure you get Nsight for Visual - Studio. -4. Install [CMake](http://www.cmake.org/download/). -5. Install [Git](https://git-scm.com/download/win). - -### OS X - -1. Make sure you are running OS X 10.9 or newer. -2. Install XCode (available for free from the App Store). - * On 10.10, this may not actually be necessary. Try running `gcc` - in a terminal first. -3. Install OS X Unix Command Line Development Tools (if necessary). -4. Install [CUDA 7](https://developer.nvidia.com/cuda-downloads?sid=925343) - (don't use cask; the CUDA cask is outdated). - * Make sure you get Nsight. -5. Install [Git](https://git-scm.com/download/mac) - (or: `brew install git`). -6. Install [CMake](http://www.cmake.org/download/) - (or: `brew cask install cmake`). - -### Linux - -Note: to debug CUDA on Linux, you will need an NVIDIA GPU with Compute -Capability 5.0. - -1. Install [CUDA 7](https://developer.nvidia.com/cuda-downloads?sid=925343). - * Make sure you get Nsight. -2. Install Git (`apt-get install git` on Debian/Ubuntu). -3. Install CMake (`apt-get install cmake` on Debian/Ubuntu). - - -## Part 2: Fork & Clone - -1. Use GitHub to fork this repository into your own GitHub account. -2. If you haven't used Git, you'll need to set up a few things. - * On Windows: In order to use Git commands, you can use Git Bash. You can - right-click in a folder and open Git Bash there. - * On OS X/Linux: Open a terminal. - * Configure git with some basic options by running these commands: - * `git config --global push.default simple` - * `git config --global user.name "YOUR NAME"` - * `git config --global user.email "GITHUB_USER@users.noreply.github.com"` - * (Or, you can use your own address, but remember that it will be public!) -3. Clone from GitHub onto your machine: - * Navigate to the directory where you want to keep your 565 projects, then - clone your fork. - * `git clone` the clone URL from your GitHub fork homepage. - -* [How to use GitHub](https://guides.github.com/activities/hello-world/) -* [How to use Git](http://git-scm.com/docs/gittutorial) - - -## Part 3: Build & Run - -Project 0 is a simple program that demonstrates CUDA and OpenGL functionality -and interoperability, testing that CUDA has been properly installed. If the -machine you are working on has CUDA and OpenGL 4.0 support, then when you run -the program, you should see either one or two colors depending on your -graphics card. - -* `src/` contains the source code. -* `external/` contains the binaries and headers for GLEW and GLFW. - -**CMake note:** Do not change any build settings or add any files to your -project directly (in Visual Studio, Nsight, etc.) Instead, edit the -`src/CMakeLists.txt` file. Any files you add must be added here. If you edit it, -just rebuild your VS/Nsight project to make it update itself. - -### Windows - -1. In Git Bash, navigate to your cloned project directory. -2. Create a `build` directory: `mkdir build` - * (This "out-of-source" build makes it easy to delete the `build` directory - and try again if something goes wrong with the configuration.) -3. Navigate into that directory: `cd build` -4. Open the CMake GUI to configure the project: - * `cmake-gui ..` - * or: "C:\Program Files (x86)\cmake\bin\cmake-gui.exe" .. - * Click *Configure*. Select your version of Visual Studio, Win64. - (**NOTE:** you must use Win64, as we don't provide libraries for Win32.) - * If you see an error like `CUDA_SDK_ROOT_DIR-NOTFOUND`, - set `CUDA_SDK_ROOT_DIR` to your CUDA install path. This will be something - like: `C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v7.0` - * Click *Generate*. -5. If generation was successful, there should now be a Visual Studio solution - (`.sln`) file in the `build` directory that you just created. Open this. - (from the command line: `explorer *.sln`) -6. Build. (Note that there are Debug and Release configuration options.) -7. Run. Make sure you run the `cis565_` target (not `ALL_BUILD`) by - right-clicking it and selecting "Set as StartUp Project". - -### OS X & Linux - -It is recommended that you use Nsight. - -1. In a terminal, navigate to your cloned project directory - (`cd some/path`). -2. Type `make`. -3. If you see an error like `CUDA_SDK_ROOT_DIR-NOTFOUND`: - * `cd` to the build directory, then run CMake GUI: `cmake-gui ..` - * Set `CUDA_SDK_ROOT_DIR` to your CUDA install path. - This will be something like: `/usr/local/cuda` - * Click *Configure*, then *Generate*. -4. Open Nsight. Set the workspace to the one *containing* your cloned repo. -5. *File->New->Makefile Project with Existing Code*. - * Set the *Existing Code Location* to the cloned project directory. - * Select *CUDA Toolkit 7.0*. - * *Finish*. -6. Select the *cis565-* project in the Project Explorer. From the *Project* - menu, select *Build All*. -7. From the *Run* menu, *Run*. Select the `cis565_` binary. - - -## Part 4: Modify - -1. Search the code for `TODO`: you'll find one in `src/main.cpp` on line 13. - Change the string to your name, rebuild, and run. - (`m_yourName = "TODO: YOUR NAME HERE";`) -2. Take a screenshot of the window (including title bar) and save it to the - `images` directory for Part 6. -3. You're done with some code changes now; make a commit! - * Make sure to `git add` the `main.cpp` file. - * Use `git status` to make sure you didn't miss anything. - * Use `git commit` to save a version of your code including your changes. - * Use `git push` to sync your code history to the GitHub server. - -## Part 5: Analyze - -**NOTE: This part *cannot* be done on the lab computers, as it requires -administrative access.** If you do not have a CUDA-capable computer of your -own, you may need to borrow one for this part. However, you can still do the -rest of your development on the lab computer. - -### Windows - -1. Go to the Nsight menu in Visual Studio. -2. Select *Start Performance Analysis...*. -3. Select *Trace Application*. -4. Under *Application Control*, click *Launch*. -5. Run the program for a few seconds, then close it. -6. At the top of the report page, select *Timeline* from the drop-down menu. -7. Take a screenshot of this tab and save it to `images`, for Part 6. - -### OS X & Linux - -1. Open your project in Nsight. -2. *Run*->*Profile*. -3. Run the program for a few seconds, then close it. -4. Take a screenshot of the timeline and save it to `images`, for Part 6. - - -## Part 6: Write-up - -1. Update ALL of the TODOs at the top of this README: - * Remove all instructions. - * Add your name, computer, and whether it's a personal or lab computer. - * Embed the screenshots you took. - * Syntax help: https://help.github.com/articles/writing-on-github/ -2. Add, commit, and push your screenshots and README. - * Make sure your README looks good on GitHub! -3. If you have modified either of the `CMakeLists.txt` at all (aside from - the list of `SOURCE_FILES`), you **must** test your project in Moore 100B. - -## Submit -1. Open a GitHub pull request so that we can see that you have finished. -2. Send an email to the TA (gmail: kainino1+cis565@) with: - * **Subject**: in the form of `[CIS565] Project 0: PENNKEY` - * Direct link to YOUR fork on GitHub - * In the form of a grade (0-100+), evaluate your own performance on the - project. - (N/A for Project 0.) - * Feedback on the project itself, if any. - -And you're done!