Updated

Chicago, IL (SportsNetwork.com) - Mike Olt's first career grand slam was one of three home runs hit by the Chicago Cubs as they avoided getting swept in the Windy City showdown with a 12-5 victory over the Chicago White Sox on Thursday.

Anthony Rizzo and Starlin Castro each clubbed two-run homers for the Cubs, who snapped a four-game losing streak with a 15-hit attack. They had been held to four hits in each of the first three games of this four-game home-and-home set.

Rizzo finished 3-for-5 with a walk and scored three runs, while Olt, Ryan Kalish, Nate Schierholtz and Junior Lake all had two hits.

Cubs starter Jake Arrieta labored in his second outing after beginning the season on the disabled list, allowing four runs -- three earned -- on nine hits in four innings.

"I'm still not happy with it and I won't be until I get out there the next go round," Arrieta said. "Just need to make some adjustments. Be better commanding the ball down in the zone."

Relievers Brian Schlitter (2-0), Zac Rosscup, Neil Ramirez, Justin Grimm and Wesley Wright combined to limit the White Sox to a run and four hits in the final five frames.

Alexei Ramirez collected four hits and Tyler Flowers knocked in two runs for the White Sox, who had their season-high winning streak come to an end at four games.

Scott Carroll (1-2) struggled for the White Sox as he was tagged for six runs and 11 hits in four-plus innings. He had allowed just one earned run in his first two career starts.

The Cubs erased a 2-0 deficit with a four-run third. Kalish led off with a triple and scored on Luis Valbuena's single up the middle. Rizzo followed with a smash over the center-field wall, and Lake later forced in a run with a bases-loaded walk.

Castro made it 6-2 with a drive to left-center field in the fourth, but the White Sox trimmed their deficit in the bottom of the inning on RBI singles by Flowers and Conor Gillaspie.

The Cubs pulled away later in the game as Olt's homer highlighted a five-run eighth.

"It just seemed like every inning they had a lot of guys on and they were knocking them in. They were swinging the bats tonight," said White Sox manager Robin Ventura.

Game Notes

The Cubs' 12 runs were a season high, and they tied a season high for hits in a game ... The Cubs have never gone winless in a season series against the White Sox ... Castro has reached base safely in all 12 games played at U.S. Cellular Field ... Every play in the Cubs lineup had at least one hit ... The White Sox bullpen had its scoreless streak ended at 23 2/3 innings ... The Cubs were 5-for-20 with runners in scoring position, while the White Sox finished 5-for-12 ... The game lasted 4 hours and 7 minutes.