Phelps, out of retirement and aiming to add to his record tally of 18 Olympic gold medals at the Rio Games in August, powered home to win the 100m butterfly in 51.94sec, with fellow American Tom Shields second in 52.39 and Tim Phillips third in 52.61.
"I'm happy to be able to do that double and go 51.9," said Phelps, who also swam 49.77 in the men's 100m free, good for sixth in a race won by America's 2012 Olympic gold medalist Nathan Adrian in 48.91.
France’s Jeremy Stravius was second in 48.96, with American Jimmy Feigen third in 49.20.