The inmates were among 10 from Larch Corrections Center near Yacolt, Wash., who were cleaning the park when they heard the boys yell for help, NBC News reported Friday.
Inmate Nelson Pettis, 37, jumped into the water and floated downstream until he could grab the two younger boys, ages 8 and 10, and pull them to a pile of floating debris.
Pettis was assisted in the rescued by another inmate, Larry Bohn, 29. Inmate Jon Fowler, 28, helped the rescue team inflate their boat.
The third boy, 16, was able to swim to shore.
The icy water was moving at 25 mph, Clark County Fire District 6 Chief Jerry Green estimated.
Both Bohn and Pettis took off their shirts and wrapped them around the boys to keep them warm.
All of the boys and two of the inmates were treated for hypothermia, KGW-TV, Portland, Ore., reported.
The Larch correctional facility houses non-violent inmates with four years or less remaining on their sentences, facility spokeswoman Nancy Simmons said.