Previous | Next --- Slide 14 of 36
Back to Lecture Thumbnails
retterermoore

What's an application where writing to adjacent vertices wouldn't be okay but writing to adjacent edges would be? I'm kind of confused by vertex consistency vs. full consistency

spilledmilk

The way I interpreted vertex consistency from this slide was that vertex consistency would make sure nothing was modifying the data in your current vertex in parallel.

Summarizing the definitions in terms of the picture,

  • Full consistency: Nothing else is modifying anything marked by a yellow box.
  • Edge consistency: Nothing else is modifying the red node or edges coming out of it.
  • Vertex consistency: Nothing else is modifying the red node.
jmnash

Actually, the definitions specify that not only is nothing allowed to modify the neighborhood vertices/edges/both (depending on the type of consistency), but nothing is allowed to READ from them either. So one situation where you might want consistency on the vertices but not on the edges is if the information on the edges isn't changing, and it is only being read. Because then it wouldn't matter if multiple programs were looking at it at the same time. The same would be true if you were only updating edges and not vertices. This is a really simple example, but there are probably other examples where both are being modified but you only care about consistency in one of the sets.

RICEric22

Not specifically specified but implicit is the null consistency, which has no restrictions on modifying anything.