JaJuan Johnson had 15 points and 15 rebounds, and No. 11 Purdue's defense clamped down on Big Ten-leading scorer Talor Battle in an 83-68 win Wednesday night.
Ryne Smith added 20 points before fouling out to help the Boilermakers (14-1, 3-0) overcome an off night for star guard E'Twaun Moore (four points) and win their ninth straight.
Battle finished with 18 points, but shot just 6 of 22 from the field and was 2 of 9 from the 3-point arc. The Nittany Lions (8-6, 1-2), starting a stretch of five straight against ranked foes, lost its 10th straight to a Top 25 team.
Kelsey Barlow's jumper at 12:50 of the second half capped a 16-8 run to push a four-point halftime lead to 47-35. Johnson scored 11 points in the half.
Two free throws by Johnson extended the lead to 15 with 8:52 left.
Jermaine Marshall scored 18 points for Penn State, giving coach Ed DeChellis a needed spark off the bench with top reserve guard Taran Buie suspended indefinitely for a violation of team rules.
But Buie's half brother, Battle, struggled to get open with Purdue guards Lewis Jackson and Terone Johnson taking turns harassing the Nittany Lions' star. Jeff Brooks added 15 points and 10 rebounds for Penn State.
Defense and long-range shooting have been hallmarks of Purdue's win streak, and it propelled the Boilermakers again in chilly Happy Valley. Penn State shot 28 percent (5 of 18) from 3, while Purdue shot 46 percent (6 of 13) from long range.
The Boilermakers took control early in the second half after leading 31-27 at the break. Johnson hit a fadeaway jumper in the post, then converted an offensive rebound with four Nittany Lions around him for a 40-31 lead.
Purdue won the rebounding margin 46-31.
After Andrew Jones missed a foul-line jumper, Lewis Jackson's fastbreak layup gave Purdue its first double-digit lead at 42-31 with 15 minutes left, and the Nittany Lions got no closer than seven the rest of the way.
Jackson finished with 17 points.
Moore shot just 2 of 10 from the field, and his four points were 16 below his season average.