HOUSTON - The Houston Astros put on an impressive display of power Wednesday night, hitting six home runs to get their seventh win in eight games with a 11-7 victory over the Baltimore Orioles.

Jason Castro, Carlos Pena and J.D. Martinez each had two-run homers, and Jose Altuve, Matt Dominguez and Marwin Gonzalez added solo shots as the Astros came one home run shy of a single-game franchise record for home runs.

The Astros tagged Freddy Garcia (2-3) for four homers and reached reliever Steve Johnson for two in the fourth inning.

It's the most home runs the Astros have had in a single game since also hitting six on Aug. 9, 2006, against Pittsburgh. The record of seven long balls came in 2000. It is the first time they've had six different players hit homers in a game since that record-setting game in 2000.

Houston starter Dallas Keuchel (3-2) yielded five hits and a run with three strikeouts in six innings.

Garcia allowed seven hits and a season-high six runs, and the four homers tied a career-high in three-plus innings, his shortest start of the season. Garcia had allowed just seven homers this season before Wednesday, and pitched eight scoreless innings in his last start.

The Orioles couldn't get anything going on offense until after Keuchel left the game and they were down 9-1.

J.J. Hardy had an RBI single in the first and a solo home run in Baltimore's three-run seventh inning. Matt Wieters connected on a two-run homer in the eighth inning and Manny Machado drove in a run later in that inning.

The Orioles were unable to build on the big inning when Hardy grounded into a double play with the bases loaded to end the eighth.

Dominguez drove in two more runs with a double in the seventh inning. The Astros got hits from everyone in their lineup, with Carlos Corporan going 3 for 3 and scoring two runs.

Houston got homer after homer in the first four innings, sending six of its first nine hits out of the park.

Altuve singled with one out in the first before Castro became the first Astro to go deep, launching a shot to the bullpen in right-center field to put Houston up 2-1.

Corporan singled with two outs and Pena made it 4-1 when he knocked a homer to almost the exact same spot in the bullpen.

No. 9 hitter Gonzalez continued the slugging in the second inning when he also sent one into the bullpen to extend the lead to 5-1.

Garcia allowed a two-out single to Pena before walking Corporan in the third, but Trevor Crowe grounded out to end the frame.

Dominguez opened Houston's fourth with his homer to the mezzanine to chase Garcia. He was replaced by Steve Johnson, who struck out the first two batters before Houston's hot hitting continued when Altuve sent one to left field to make it 7-1.

Castro drew a walk to set the table for Martinez, whose soaring shot bounced high on the wall in left-center field to extend Houston's lead to 9-1.

Johnson issued another walk but finally escaped the inning by striking out Pena.

The Orioles led early after Nate McLouth started the game with a ground-rule double and scored on a one-out single by Hardy to make it 1-0.

Keuchel walked Alexi Casilla in the second inning before retiring 12 in a row. Baltimore's next baserunner came when Adam Jones singled with two outs in the sixth. Chris Davis followed with a single and Wieters walked to load the bases. Keuchel got out of the jam by striking out Danny Valencia.

Casilla had a run-scoring triple in the seventh before McLouth sent home another run with a sacrifice fly to cut the lead to 9-3. Hardy hit his 13th homer with two outs in the inning.

NOTES: The series wraps up today when Houston's Bud Norris opposes Miguel Gonzalez. ... Houston minor league OF and top prospect Jonathan Singleton, who finished a 50-game suspension for a drug of abuse late last month, has been promoted to Double-A Corpus Christi after playing six games at Class A Quad Cities. ... Danielle Bradbery, a semifinalist on NBC's singing competition "The Voice" who is from the Houston suburb of Cypress, Texas, performed the national anthem.