gdalle / InternsINDY2024

1 stars 0 forks source link

Parallel graph algorithms #2

Open gdalle opened 5 months ago

gdalle commented 5 months ago

Some resources to learn more about parallel graph algorithms and pick a topic of interest

Reading list:

Assignment:

gdalle commented 4 months ago

26.02.2024

Presented a proposition (see below)

Student tasks:

Instructor tasks:

If interested:

Next meeting: friday to discuss package creation

AntoineBut commented 4 months ago

Parallel Graphs in Julia : Proposition de plan

-Implémentation de certaines primitives nécessaires à de nombreux algorithmes parallèles, potentiellement dans utils.jl : Reduce : déjà implémenté Scan Filter EdgeMap & VertexMap

-Implémentation d’un premier algorithme complet Low-Diameter Decomposition (utilisé dans de nombreux autres algorithmes) Parallel speed-up benchmark (en plus des tests de correctness)

-Implémentation d’un second algorithme plus complexe Graph Coloring (NP-Hard) Benchmarks : random input, worst-case input (on peut s’attendre à une large différence) Comparaison des résultats obtenus et des garanties théoriques, analyse statistique

AntoineBut commented 4 months ago

L'implémentation de "Low Diameter Decomposition" qui est évoquée dans le papier de recherche "Theoretically Efficient Parallel Graph Algorithms Can Be Fast and Scalable" semble être basée sur ce papier : Parallel Graph Decompositions Using Random Shifts. L'algorithme y est décrit de manière assez claire en une dizaine de page, je pense que c'est un bon point de départ.

gdalle commented 4 months ago

Cool, je jetterai un œil avant notre meeting de vendredi !

gdalle commented 4 months ago

01.03.2024

Work done

Tasks

gdalle commented 4 months ago

06.03.2024

Work done

Tasks

BFS running with tests and benchmarks

Specification

Performance

Testing

Benchmarking

Good practices

Questions

AntoineBut commented 3 months ago

Parallel weighted BFS :

Implantation is significantly more complicated than non-weighted variant. Requires a "Bucket" data-structure as introduced in https://www.cs.umd.edu/~laxman/papers/Bucketing.pdf .

I will look into this for the next meeting.

gdalle commented 3 months ago

Interesting, but I would start by getting the unweighted version up and running!

gdalle commented 3 months ago

15.03.2024

Work done

During meeting

Tasks

gdalle commented 3 months ago

21.03.2024

Remarks

using BenchmarkTools
g = SimpleGraph(100, 200)
@btime bfs!(parents, $g) setup=(parents=zeros(Int, nv(g)) evals=1
repetitions = 10
@profview for r in 1:repetitions; bfs(g); end
parents_several = [zeros(Int, n) for r in 1:repetitions]
@profview for r in 1:repetitions; bfs!(g, parents_several[r]); end

To do

gdalle commented 3 months ago

2024.03.27

Work done

Debugging

Question

gdalle commented 2 months ago

2024.04.10

Work done

Todo

Remarks

Presentation

gdalle commented 2 months ago

17.04.2024

Work done

Todo

gdalle commented 2 months ago

2024.04.24

Work done

AntoineBut commented 2 months ago

Graph BLAS algorithms descriptions :

http://mit.bme.hu/~szarnyas/grb/graphblas-introduction.pdf

gdalle commented 2 months ago

2024.05.01

Work done

Todo

Bonus

gdalle commented 1 month ago

08.05.2024

Work done

Todo

gdalle commented 1 month ago

17.05.2024

Work done

gdalle commented 1 month ago

22.05.2024

Work done

Discussion

gdalle commented 1 month ago

29.05.2024

Work done

Discussion

Todo

  1. Report v1 for Monday