Perrin studierte von 1982 bis 1985 an der École polytechnique in Paris. Unterbrochen wurde dies durch seinen Militärdienst in der französischen Marine, der ihn auch sechs Monate in den Indischen Ozean führte. Nach seinem Diplom ging er zu den französischen Luftstreitkräften. Seine Ausbildung zum Kampfpiloten bestand er 1986 als Jahrgangsbester. Er wurde in Straßburg stationiert, diente aber kurzzeitig auch in Afrika und Saudi-Arabien.
Im Juli 1996 wurde er vom CNES als Astronauten-Kandidat der Öffentlichkeit vorgestellt und zur Ausbildung an die NASA entsandt. Zusammen mit der NASA-Gruppe16 wurde er ab August 1996 im Johnson Space Center in Houston zum Missionsspezialisten ausgebildet. Nach dem Abschluss im August 1998 arbeitete er an der Weiterentwicklung des Space Shuttles, der X-38 und des Automated Transfer Vehicles (ATV).
Im Juni 2002 nahm Perrin als Missionsspezialist am zweiwöchigen Raumflug STS-111 der Raumfähre Endeavour teil. Dabei wurde eine neue Besatzung, das kanadische Mobile Base System sowie das Mehrzweck-Logistik-Modul (MPLM) Leonardo zur Internationalen Raumstation (ISS) gebracht. Perrin und sein Kollege Chang-Diaz montierten bei drei Außenbordeinsätzen (EVAs) das Mobile Base System und reparierten den kanadischen Roboterarm Canadarm2. Perrin wurde damit nach Jean-Loup Chrétien der zweite französische Raumfahrer, der einen Weltraumausstieg unternahm, und der erste, der dies von einem Space Shuttle aus unternahm. Am Ende der Mission bediente Perrin den Roboterarm des Shuttles, um das MPLM zurück in das Shuttle zu bringen.
Nach seinem Raumflug wurde Perrin im Dezember 2002 in das Europäische Astronautenkorps (EAC) der ESA eingegliedert, wo er in Toulouse an der Entwicklung des ATV arbeitete. Zum 1. Mai 2004 verließ er die ESA und wurde Testpilot bei Airbus. Die französische Berufspilotenlizenz hatte er seit 1995, die amerikanische seit 1999. Seitdem arbeitet er als Testpilot für Airbus. Er war Kapitän des Erstfluges der Frachtversion des Airbus A330-200, welcher am 5. November 2009 stattfand.[1]