diff --git a/DergunPiotr-WaskoDominik/zad3/dok.tex b/DergunPiotr-WaskoDominik/zad3/dok.tex new file mode 100644 index 0000000..f069506 --- /dev/null +++ b/DergunPiotr-WaskoDominik/zad3/dok.tex @@ -0,0 +1,108 @@ +\documentclass[a4paper,12pt]{article} +\usepackage{amsmath} +\usepackage{amssymb} +\usepackage[polish]{babel} +\usepackage{polski} +\usepackage[utf8]{inputenc} +\usepackage{indentfirst} +\usepackage{geometry} +\usepackage{array} +\usepackage[pdftex]{color,graphicx} +\usepackage{subfigure} +\usepackage{afterpage} +\usepackage{setspace} +\usepackage{color} +\usepackage{wrapfig} +\usepackage{listings} +\usepackage{datetime} + +\renewcommand{\onehalfspacing}{\setstretch{1.6}} + +\geometry{tmargin=2.5cm,bmargin=2.5cm,lmargin=2.5cm,rmargin=2.5cm} +\setlength{\parindent}{1cm} +\setlength{\parskip}{0mm} + +\newenvironment{lista}{ +\begin{itemize} + \setlength{\itemsep}{1pt} + \setlength{\parskip}{0pt} + \setlength{\parsep}{0pt} +}{\end{itemize}} + +\newcommand{\linia}{\rule{\linewidth}{0.4mm}} + +\definecolor{lbcolor}{rgb}{0.95,0.95,0.95} +\lstset{ + backgroundcolor=\color{lbcolor}, + tabsize=4, + language=C++, + captionpos=b, + tabsize=3, + frame=lines, + numbers=left, + numberstyle=\tiny, + numbersep=5pt, + breaklines=true, + showstringspaces=false, + basicstyle=\footnotesize, + identifierstyle=\color{magenta}, + keywordstyle=\color[rgb]{0,0,1}, + commentstyle=\color{Darkgreen}, + stringstyle=\color{red} + } + +\begin{document} + +\noindent +\begin{tabular}{|c|p{11cm}|c|} \hline +Grupa 1 & Piotr Dergun, Dominik Waśko & \ddmmyyyydate\today \tabularnewline +\hline +\end{tabular} + + +\section*{Zadanie 3 - Mnożenie macierzy GPU} + +Celem zadania jest obliczenie iloczynu dwóch macierzy prostokątnych o wymiarach n x n, wykorzystując karte graficzną oraz technologię CUDA . Posługując się zapisem matematycznym zadanie można zapisać jako równanie: A*B = C. +Kerlen odpowiadający za mnożenie macierzy wygląda następująco: +\begin{lstlisting} +__global__ void multiply(char *a,char *b,int *c, int N){ + int i =blockIdx.x * blockDim.x + threadIdx.x; + int sum = 0; + int temp,temp2; + while(i