When it comes to parallel programming, I have only been exposed to multithreading but recently I have been presented with mpi I tried to make sense of what the difference is through searching online but was to no avail. I think they are both libraries for the sake of parallelizing your code correct? If so how are they different?or are they even comparable like an apple and an orange. Can someone clarify?