We used Ocean Joy Cruises for a snorkel cruise which is located at the Ko Olina marina. They were a bit more expensive than other cruises but they were awesome. They only drawback is that you have to wear a life jacket when snorkeling no matter what.
We walked to the marina from the Marriott and it was only a 10 minute walk so we did not have to pay parking.