Espaço do desenvolvedor Intel®:
Courseware - Fundamental Algorithms

  • Simple numerical algorithms
  • Sequential and binary search algorithms
  • Quadratic sorting algorithms (selection, insertion)
  • O(N log N) sorting algorithms (Quicksort, heapsort, mergesort)
  • Hash tables, including collision-avoidance strategies
  • Binary search trees
  • Representations of graphs (adjacency list, adjacency matrix)
  • Depth- and breadth-first traversals
  • Shortest-path algorithms (Dijkstra’s and Floyd’s algorithms)
  • Transitive closure (Floyd’s algorithm)
  • Minimum spanning tree (Prim’s and Kruskal’s algorithms)
  • Topological sort

graph algorithm examples
numeric algorithm examples
sorting algorithm examples
searching algorithm examples

  • Classroom challenge: Matrix Multiplication, Performance and Scalability in OpenMP
  • Material Type:

    Article / White paper

    ISN Logo

    Technical Format:

    .gz, PDF document

    Location:

    Go to materials

    Date Added:

    09/23/2010

    Date Modified:

    09/23/2010

    Author

    Nicolás Wolovick, National University of Córdoba, Argentina
    Description:

    A simple, widely known and studied problem was posed to the class students: matrix multiplication. We made an internal contest, which was to obtain the fastest serial code in which the students learned a lot about compiler optimizations, and even more, the effect of caches in code performance. The objective of the contest was to extrapoloate this exercise into a massive multicore architecture. Students were given kickstart code with a naive C using an OpenMP implemention of the problem, and a series of rules. The kickstart code and the better student results are included in this posting.

    Recommended Audience:

    Beginning programmers, Secondary School students, Undergraduate students

    Language:

    English

    Keywords:

    Matrix, Mulitply, performance, OpenMP, scalability, contest, kickstart, compiler, student, activity, SSE, intrinsics