HOUSTON -- The Houston Astros hit the ball so hard Wednesday night that some players wished they had something to protect their ears in the dugout from the sound of smack after home run smack.
The Astros put on an impressive display of power, 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.
"I think everybody hit the ball hard tonight," Martinez said. "You felt like you needed headphones or ear plugs in the dugout because everybody was hitting the ball hard."
It's the most home runs the Astros have had in a game since also hitting six on Aug. 9, 2006 against Pittsburgh. The record of seven long balls came in 2000. It is the second time they've had six different players hit homers in a game and the first since that record-setting game in 2000.
The game extended a streak of eight straight with a home run for the Astros, who have hit 15 in that span.
Pena, one of the only veterans on this team which is the youngest in the American League, said it's fun to see the team start to play well.
"It's a blast," he said. "We all pull for each other. We have a pretty good group. I think we all get along very well and we genuinely pull for each other, so when someone else has success it's like everyone is just enjoying it."
About the only disappointment for Houston was that every player didn't get a homer.
"We kept talking about it," Martinez said. "All we needed was three more, and the whole lineup would have hit a home run."
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.
"He didn't have his split," manager Buck Showalter said. "All of the things he had working for him last time, he didn't have. He elevated a lot of balls. They put a lot of good swings on the mistakes we made, and we made a bunch of them tonight."
The last time Garcia gave up four home runs was on Aug. 17, 2004.
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 that inning.
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 with two outs 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 another single and Wieters walked to load the bases. Keuchel got out of the jam by striking out Danny Valencia.
"I honestly didn't think I was going to make it out of the first inning the way I was throwing the ball," Keuchel said. "But I got lucky to get out of that first inning and kind of settled in after that after Castro's home run in the bottom of the first."
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 Thursday 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.