Berrios (12-6) tied a career high with 11 strikeouts, including seven of the last nine batters he faced. He walked one and gave up just four hits to win his seventh straight start at Target Field.

The Twins, who entered the night with a one-game lead over the Angels for the second AL wild card spot, ran their August record to 19-10, the most wins in the major leagues this month.

Mitch Garver and Ehire Adrianza each had three hits for the Twins. Adrianza tripled twice and drove in four runs, while Garver scored three runs and was a home run short of the cycle.

After Joe Mauer drove in Dozier with a double in the first inning, Rosario came up big in the third to give the Twins a 3-0 lead. With a runner on and two outs, Rosario lifted a fastball from Derek Holland (7-14) into a stiff breeze blowing in from left, and the ball just cleared the fence.

He left no doubt on his second homer, a blast to center field leading off the seventh against reliever Mike Pelfrey. It was Rosario’s third multi-homer game of the year and gave him a career-high 20 home runs on the season.

In his last start, Holland held the Twins to one run over six innings, but he left Wednesday’s game after giving up five runs in five innings. In six career starts at Target Field he’s 0-5 with a 7.98 ERA.

Chicago’s only real threat came in the fourth, when Berrios hit Jose Abreu with a pitch, gave up a broken-bat single to Avisail Garcia and walked Omar Narvaez to load the bases with two outs. Berrios struck out Tim Anderson on three pitches, the last a 96-mph fastball, to escape the jam.

Garcia tripled off reliever Glen Perkins in the ninth. He came around to score on a sacrifice fly by Matt Davidson for Chicago’s only run.