10 interesting stories served every morning and every evening.

Oxiis Intelligent Bike Booster|Bike Booster|ASUS Global

www.asus.com

ASUS Oxiis E250G1

Ride Easy. Explore More.

Oxiis is a uni­ver­sal, fric­tion-drive mo­tor sys­tem that trans­forms any con­ven­tional bi­cy­cle into a smart e-bike. Its name fuses the Greek Oxis (agility) and Axis (pivot)—perfectly re­flect­ing how its high-per­for­mance drive core de­liv­ers ul­ti­mate ac­cel­er­a­tion and in­stant, nim­ble re­spon­sive­ness right to your ride.

Focus on es­sen­tials

Adaptive boost tech­nol­ogy

Precisely de­tects in­clines, pro­vid­ing seam­less as­sis­tance for ef­fort­less climbs.

Peak power 500W

Instant burst, ef­fort­lessly con­quer­ing chal­leng­ing ter­rains, mak­ing every ride eas­ier.

Wireless ca­dence sen­sor

Ditch the wires. Simple to in­stall, smart to ride.

Smart brake-de­tect­ing tail­light

Enhances night vis­i­bil­ity and safety, safe­guard­ing your jour­ney.

Design

Simple de­sign. Impressive ben­e­fits.

The ASUS Oxiis E250G1 de­signed with the user in mind: min­i­mum struc­ture, max­i­mum util­ity. Every de­tail is metic­u­lously crafted to el­e­vate your daily ex­pe­ri­ence, de­liv­er­ing seam­less in­ter­ac­tion and a func­tional mas­ter­piece of pre­mium qual­ity and beauty.

Premium alu­minum con­struc­tion

Built to last with high-grade, rugged ma­te­ri­als.

Anti-slip tech­nol­ogy

Dynamically pres­sure au­to­mat­i­cally grips the tire for ef­fi­cient, slip-free power trans­fer.

Easy in­stal­la­tion

Quick trans­for­ma­tion. Zero mod­i­fi­ca­tions to gears or brakes.

Efficient heat dis­si­pa­tion

Reduced risk of over­heat­ing.

Battery

Removable mod­u­lar bat­tery

Easy to charge and swap, of­fer­ing ul­ti­mate free­dom for your jour­ney.

100W USB-C® PD

2 hours fast charge

158 Wh

bat­tery ca­pac­ity

Flight-safe for carry on lug­gage (Requires air­line ap­proval pri­or­ity to fly­ing)

Compatibility

Universal de­sign, per­fect fit

ASUS Oxiis E250G1 works with a wide range of bike frame types, in­clud­ing city, road, gravel, and fold­ing bikes, as well as hy­brid or hard­tail moun­tain bikes.

Accommodates

Find your fit

To guar­an­tee op­ti­mal per­for­mance, seam­less in­stal­la­tion, and max­i­mum safety, please dou­ble-check that your bike’s spe­cific tire width, wheel size, and seat post mea­sure­ments fully meet our cri­te­ria be­fore your first setup.

Tire width

Supports tire widths up to 60 mm.

Tire size

Compatible with tire sizes from 16 to 29 inches, plus 700C.

Seat post

Fits 25.4 – 34.9 mm posts (spacers in­cluded).

Installation Guide

Easy in­stal­la­tion

No com­plex tools are needed to in­stall ASUS Oxiis E250G1.

App

ASUS Oxiis app

Three modes. One seam­less ex­pe­ri­ence.

Switch modes ef­fort­lessly us­ing the in­te­grated but­ton or ded­i­cated app.

Eco mode: Efficient sup­port for flat ter­rain and tail­winds.

Normal mode: Smooth, bal­anced power for every­day ad­ven­tures.

Sport mode: Instant boost for steep climbs and high-speed per­for­mance.

Spec

Product Specifications

Motor Power

250W (Rated) / 500W (Peak)

Range

50 km (31 miles) in eco mode

Battery

158.4 Wh / 36 V

Weight

3.7 kg (including bat­tery)

Dimensions

400 x 84 x 128 mm (L x W x H)

Max Speed

32 km/​h (Limited to 25 km/​h in spe­cific re­gions)

Charging Time

2 hours (100W PD Charger re­quired)

Waterproof Rating

IPX4

App Compatibility

Android & iOS

Get lo­cal ASUS Zenbook 14 avail­abil­ity alerts - and more from ASUS/ROG

Super El Niño Keeps Growing as New Forecasts Reach Record Territory Ahead of Winter

www.severe-weather.eu

Super El Niño con­tin­ues to strengthen rapidly across the trop­i­cal Pacific, with new ocean and at­mos­pheric data show­ing an­other ac­cel­er­a­tion in its de­vel­op­ment. The lat­est long-range fore­casts have raised the pro­jected peak again, push­ing the 2026 event deeper into his­toric ter­ri­tory later this year.

Behind this rapid growth is an un­usu­ally strong com­bi­na­tion of west­erly winds and sub­sur­face ocean heat. Recent data shows record-level west­erly wind anom­alies across the equa­to­r­ial Pacific, while a pow­er­ful Kelvin Wave con­tin­ues to spread east­ward be­neath the sur­face, pro­vid­ing ad­di­tional warm wa­ter that pow­ers the Super El Niño.

In this spe­cial­ized fore­cast ar­ti­cle, I break down the lat­est ocean and at­mos­pheric data be­hind the rapidly grow­ing Super El Niño, in­clud­ing the record west­erly wind anom­alies and chang­ing long-range fore­casts. I also look at how the at­mos­phere is al­ready re­spond­ing, and what the lat­est Fall and Winter 2026/2027 pre­dic­tions show for the United States, Canada, and Europe.

Super El Niño Dynamics: How Extreme Events Reshape Global Circulation

In the past few months, we have been track­ing the growth of a Super El Niño event that is al­ready a ma­jor global weather dri­ver for 2026/2027. This Super El Niño is grow­ing rapidly, and with the fore­casts con­stantly ad­just­ing its peak strength higher, we have to mon­i­tor its de­vel­op­ment on a reg­u­lar ba­sis.

Currently, we have just en­tered a very strong El Niño phase, so be­low you can see the usual changes it brings to the at­mos­pheric cir­cu­la­tion. The up­ward and down­ward at­mos­pheric mo­tion and cir­cu­la­tion in the trop­i­cal re­gions is called a Walker Cell, and is es­pe­cially sen­si­tive to strong ENSO events. Image by ESA.

In sim­ple terms, the El Niño causes a pres­sure drop in the cen­tral and east­ern trop­i­cal Pacific and a high-pres­sure zone over the west­ern Pacific. This cir­cu­la­tion change af­fects the global at­mos­phere and sig­nif­i­cantly in­flu­ences pres­sure pat­terns, winds, rain­fall, and the over­all sea­sonal weather sys­tem.

While a mod­er­ate event pro­duces a mild wave pat­tern, a Super El Niño trig­gers a far more ag­gres­sive shift in the jet stream. The tran­si­tion from a Moderate to an Extreme El Niño leads to a deeper Pacific trough and a stronger Canadian ridge, form­ing an at­mos­pheric high­way.

This fa­vors milder con­di­tions in the north while dri­ving an ac­tive storm track across the south­ern United States. The im­age above is from a study (linked be­low) that com­pared pres­sure anom­alies at 5km (3.1miles) dur­ing Winter for mod­er­ate and strong El Niño events.

Below is my com­bined analy­sis im­age of the last 4 Super El Niño events, show­ing ocean tem­per­a­ture anom­alies. You can see a strong warm anom­aly across the cen­tral and east­ern trop­i­cal Pacific. This close prox­im­ity to North America means di­rect and strong im­pacts on the sea­sonal weather in the United States and Canada in the Northern Hemisphere.

El Niño events hap­pen every few years, but Super events are rare, and usu­ally oc­cur once per decade or less.

But how does an El Niño even reach a Super” sta­tus? To keep it sim­ple, a west­erly wind burst can pile up warm wa­ter in the west­ern Pacific. This cre­ates a warm oceanic layer at depth known as a Kelvin Wave, rais­ing ocean heat con­tent in the west­ern Pacific, spread­ing east, and ris­ing to the sur­face.

The lat­est analy­sis data now shows the ex­act same process un­fold­ing rapidly, but with an en­ergy sig­na­ture that ex­ceeds most (if not all) pre­vi­ous su­per events.

Kelvin Wave: Subsurface Heat Drives Rapid El Niño Growth

The lat­est NOAA CRW ocean analy­sis be­low shows the ENSO area cov­ered in sub­stan­tial warm anom­alies. You can see the peak warmth in the east­ern parts reach­ing more than 5 de­grees above nor­mal over a large area, peak­ing at over 6 de­grees anom­aly. This is an ex­cep­tion­ally strong anom­aly for this stage of de­vel­op­ment, in­di­cat­ing un­usu­ally rapid El Niño growth.

The analy­sis be­low also shows the 30-day ocean tem­per­a­ture anom­aly change. It re­veals a broad warm­ing trend as the El Niño is emerg­ing, in­creas­ing by more than 1.5 de­grees over a very large area. Such a trend marks ac­cel­er­ated growth, with at least 3 months of fur­ther de­vel­op­ment ahead.

The un­usu­ally rapid growth can be seen in the lat­est analy­sis graph be­low, for the main ENSO re­gion. This is based on the rel­a­tive ENSO in­dex, which nor­mal­izes the data across past decades, mak­ing all El Niño events di­rectly com­pa­ra­ble. I pro­duced this plot us­ing BOM weekly data.

As you can see, there has been ac­cel­er­ated El Niño growth and strength­en­ing since Spring. The 2026 event has al­ready sur­passed the last Super El Niño event (2015 – 2016) in speed and strength. It is al­ready not far from the peak strength of the last Super event, af­ter hav­ing one of the fastest de­vel­op­ment cy­cles in decades.

Looking at the medium-range fore­cast be­low, the day-10 fore­cast shows con­tin­ued ex­pan­sion of the +5 de­gree (+9°F) anom­aly area, in­di­cat­ing no real break in the cur­rent growth. The 2026 event is de­vel­op­ing at an ex­cep­tional rate, with the lat­est data putting its cur­rent tra­jec­tory among the strongest in the his­tor­i­cal record.

Exceptional sur­face anom­alies are only half the story. The true power that is dri­ving this rapid warm­ing and Super El Niño de­vel­op­ment sits deep be­low the ocean sur­face.

Below you can see the sub­sur­face tem­per­a­ture anom­aly across the trop­i­cal Pacific in the top 250m (800ft) of the ocean. This re­veals the core (engine) of the 2026/2027 Super El Niño event: a pow­er­ful down­welling Kelvin Wave, with peak anom­alies over 9 de­grees (16°F) above nor­mal. It is push­ing east­ward and ris­ing to­ward the sur­face.

In sim­ple terms, the ocean sur­face anom­alies are just the sur­face foot­print of this mas­sive sub­sur­face warm core. As this warm wa­ter steadily sur­faces, it pro­vides a con­tin­u­ous sup­ply of ther­mal en­ergy to keep the El Niño strong and healthy well into the Winter sea­son.

I pro­duced a video be­low that shows the de­vel­op­ment of sub­sur­face tem­per­a­ture anom­alies in the past week un­der the ENSO re­gion. It shows clear move­ment and growth of this large Kelvin Wave and its even­tual rise as a Super El Niño in the east­ern parts.

These sub­sur­face Kelvin waves are dri­ven by the west­erly wind bursts across the trop­i­cal Pacific, push­ing the warmer sub­sur­face ocean wa­ters to the east, where they rise to the sur­face. And there are more west­erly winds com­ing to the Pacific, boost­ing the Super El Niño even higher to­wards Winter.

Westerly Wind Bursts: Record Pacific Anomalies Drive El Niño Growth

Below is the zonal wind rank­ing for June and July 2026, which I cal­cu­lated us­ing ERA5 data. It nicely shows how the west­erly wind anom­aly in the past two months com­pares to the past 86 years. You can see that a broad re­gion of the west­ern and cen­tral equa­to­r­ial Pacific recorded its strongest low-level west­erly wind anom­alies on record, with sur­round­ing ar­eas rank­ing in the top five.

This is sci­en­tif­i­cally sig­nif­i­cant be­cause achiev­ing an ab­solute record across an 86-year dataset for a two-month av­er­age re­quires sus­tained, broad trade wind col­lapse. It shows that the at­mos­phere re­ally is sup­port­ive for one of the strongest El Niño events to de­velop.

The re­sult is vis­i­ble in the ocean heat con­tent be­low, which looks at the ocean down to 300m (1000ft) depth. It per­fectly shows an ex­pand­ing warm sub­sur­face anom­aly across the trop­i­cal Pacific and ENSO re­gions from Spring to now, dri­ven by the west­erly wind bursts that push the warm Kelvin Wave east­ward.

But the story does­n’t end here, since con­tin­ued west­erly winds will help sus­tain and fur­ther strengthen the Super El Niño anom­alies at and be­low the ocean sur­face.

Below is the lat­est analy­sis and fore­cast of the winds across the trop­ics. You can al­ready see the strong west­erly wind burst anom­alies (warm hues) in the analy­sis part, dri­ving the El Niño warm­ing. But the fore­cast now also shows even stronger west­erly anom­alies across the Pacific in August, which will help fur­ther grow and strengthen the 2026/2027 Super El Niño event.

The ex­tended-range ECMWF fore­cast main­tains con­tin­u­ous west­erly wind anom­alies across the west­ern and cen­tral Pacific through late September. In en­sem­ble fore­cast­ing, a sig­nal this per­sis­tent be­yond 10 days in­di­cates an ex­cep­tion­ally ro­bust ocean-at­mos­phere cou­pling that will con­tin­u­ously sup­press trade winds and force trop­i­cal Pacific warm­ing.

The in­di­vid­ual west­erly wind burst events oc­cur on a daily or weekly scale, mak­ing it hard for sea­sonal fore­casts to sim­u­late them prop­erly. And since they are the key to El Niño growth and strength, this means the true ex­tent of the 2026 Super El Niño event was hid­den un­til re­cent weeks.

Latest El Niño Forecast: New Runs Push Further Into Record Territory

Because sea­sonal mod­els can­not prop­erly sim­u­late in­di­vid­ual fu­ture west­erly wind events, they of­ten un­der­pre­dict the ini­tial rapid growth of an El Niño. This is un­til the winds ac­tu­ally oc­cur, launch an oceanic Kelvin Wave, and al­low the mod­els to phys­i­cally see the re­sult­ing El Niño warm­ing.

This has cre­ated a very strong vi­sual fore­cast trend, with each new fore­cast show­ing a stronger peak El Niño anom­aly.

Below is a com­par­i­son I pro­duced us­ing the last seven ECMWF fore­casts, re­leased since early February. You can clearly see that each new run shows a stronger event, with the last three runs push­ing it into record-strong ter­ri­tory, above all the strongest Super El Niño events.

The same trend is also vis­i­ble on the NMME multi-model fore­cast, also trend­ing with a stronger Super El Niño with each con­sec­u­tive run since February at least. The anom­aly val­ues for the main ENSO re­gion now peak close to +4 de­grees, mak­ing this a record-strong event if ver­i­fied.

The term Super El Niño is com­monly used for events in which sea sur­face tem­per­a­ture anom­alies in the main ENSO re­gion reach or ex­ceed +2 de­grees above the long-term av­er­age. All fore­casts now in­di­cate that this event will reach far above that, ex­ceed­ing even the ex­treme +3 thresh­old (unofficial) in a lot of sce­nar­ios.

Below is the lat­est ECMWF fore­cast av­er­age for the November-December pe­riod, re­veal­ing a sig­nif­i­cant Super El Niño event. Peak anom­alies reach +7 in the east­ern parts, out­side of the main re­gion, but over­all, we are ob­serv­ing a his­toric event un­fold­ing.

El Niño events al­ways peak later in the year, with the lat­est fore­casts trend­ing to­ward a max anom­aly around November-December as seen above. The multi-model fore­cast be­low for November shows a very strong event, with the Super El Niño and re­lated anom­alies cov­er­ing over 10% of the global ocean sur­face.

But the strong anom­alies do not end in the ocean. The at­mos­phere is al­ready re­spond­ing to this El Niño event, with stronger im­pacts com­ing in Fall and Winter 2026/2027, as in­di­cated by the lat­est long-range data.

Atmospheric Forcing: Super El Niño Establishes a Global Standing Wave

To de­tect the vis­i­ble at­mos­pheric im­pact of the Super El Niño, we need to find its cir­cu­la­tion in the Walker cell, the trop­i­cal ris­ing and sink­ing of air.

Below is the lat­est 30-day analy­sis of the Velocity Potential pa­ra­me­ter from GDAS data, which shows broad ar­eas of ris­ing and sink­ing air in the at­mos­phere. You can see a large ris­ing air anom­aly (teal) di­rectly over the cen­tral and east­ern Pacific, forced by the lower pres­sure and rain­fall of the El Niño, and strong sink­ing (brown) to­wards the west.

These ar­eas of ris­ing and sink­ing air (Walker cell) are usu­ally dy­namic, mov­ing around the globe with dif­fer­ent at­mos­pheric waves and dri­vers. But when a Super El Niño ap­pears, the strong ocean heat and en­ergy over­pow­ers these mov­ing weather dri­vers.

It can force the at­mos­phere to lock down, cre­at­ing what sci­en­tists call an at­mos­pheric stand­ing wave. You can see this in the ECMWF ex­tended fore­cast be­low, which shows the main ar­eas of the Walker cell al­most fixed/​sta­tion­ary over time, for the du­ra­tion of the fore­cast into late September.

You can clearly see the two main ar­eas of ris­ing and sink­ing mo­tion: Low pres­sure over the trop­i­cal Pacific and the sta­ble sink­ing air over the Indian Ocean, which re­veal the stand­ing wave for­ma­tion.

But just look­ing at two dif­fer­ent col­ors does­n’t re­veal the full pic­ture. For that rea­son, NOAA has cre­ated the Multivariate ENSO Index (MEI). This in­dex com­bines oceanic and at­mos­pheric data into a sin­gle mea­sure of the ENSO state. This re­veals how strongly the El Niño sig­nal is es­tab­lished across both the ocean and at­mos­phere.

You can see the MEI table be­low, which shows the bi-monthly value for 2026, com­pared to the last 3 Super El Niño events. The lat­est value shows that 2026 reached a record-high June-July (JJ) value of +2.4, the high­est for this pe­riod in the NOAA record since it be­gan in 1979.

Values above +2 are found only dur­ing the strongest El Niño events, but not this early. This con­firms just how strongly the oceanic and at­mos­pheric sig­nals have al­ready de­vel­oped in 2026. The in­dex un­der­went an ex­cep­tional +3.4 point jump in just four bi-monthly pe­ri­ods, climb­ing from a cool -1 in February-March to +2.4 in June-July.

This means the weather in your back­yard is di­rectly or in­di­rectly con­nected to what’s hap­pen­ing in the trop­i­cal Pacific, no mat­ter how far away you live.

With a his­toric 2026/2027 Super El Niño event un­fold­ing, we are en­ter­ing al­most un­charted ter­ri­tory in terms of at­mos­pheric im­pacts. The biggest im­pact in the Northern Hemisphere ar­rives dur­ing Fall and more in Winter, when the pres­sure sys­tems are at their strongest.

Fall 2026 Forecast: El Niño Winter Pattern Appears Early

The lat­est Fall pres­sure pat­tern fore­cast shows a much more evolved pat­tern than nor­mally ex­pected, look­ing more sim­i­lar to an El Niño Winter sig­na­ture.

You can see be­low that it shows a stronger-than-usual at­mos­pheric im­pact in Fall al­ready, due to the strength of this El Niño event. The key is a high-pres­sure anom­aly over Canada, with the El Niño Pacific low, and a wave of low-pres­sure sys­tems over the south­ern United States.

Further east, a low-pres­sure area sits over the North Atlantic, reach­ing into the UK and Ireland. This cre­ates a pro­nounced west­erly flow over the con­ti­nent and brings a warmer southerly air­mass ris­ing to­wards the north.

This is re­ally in­ter­est­ing to see, be­cause it breaks the usual Fall El Niño pat­tern, and in­stead looks more like an El Niño Winter pat­tern, seen be­low. It has the same low-pres­sure area in the North Pacific, a high-pres­sure zone over Canada, and a low-pres­sure storm track across the south­ern United States and into the Atlantic, just as the Fall fore­cast above.

This re­ally shows just how strong the Super El Niño global forc­ing is, al­ready ev­i­dent in the cur­rent Summer sea­son with the for­ma­tion of an at­mos­pheric stand­ing wave.

The tem­per­a­ture fore­cast be­low shows warmer tem­per­a­tures over the north­ern United States and Canada un­der the main high-pres­sure area. Temperatures are mostly around nor­mal in the south-cen­tral and east­ern United States, due to a more per­sis­tent low-pres­sure storm track start­ing in the south­ern half of the United States.

This is the October-December pe­riod in the fore­cast, which cov­ers the core Fall sea­son and the early tran­si­tion into Winter.

The pre­cip­i­ta­tion fore­cast for the same pe­riod also shows a very evolved El Niño sig­na­ture, with in­creased rain­fall over most of the United States, es­pe­cially in the south­east and east, due to the am­pli­fied Pacific jet stream. Drier con­di­tions are fore­cast over the north­west­ern U.S. and south­ern Canada.

Over Europe, we can see the im­pact of the low-pres­sure area in the North Atlantic, bring­ing warmer-than-nor­mal sur­face tem­per­a­tures over much of the con­ti­nent. Warmer anom­alies are fo­cused on the cen­tral, west­ern, and south­east­ern re­gions, dri­ven by the west­erly and south­west­erly flow.

The west­erly and south­west­erly flow from the Atlantic low-pres­sure area also brings in a lot of mois­ture, in­creas­ing pre­cip­i­ta­tion po­ten­tial over much of the con­ti­nent. This is vis­i­ble in the pre­cip­i­ta­tion fore­cast (right), in­di­cat­ing above-nor­mal pre­cip­i­ta­tion over most of Europe.

All these fore­casts show that we can ex­pect a strong pat­tern evo­lu­tion from the his­toric El Niño event. But the full strength forc­ing usu­ally oc­curs in Winter, with the lat­est round of fore­casts in­di­cat­ing a highly am­pli­fied Winter pat­tern.

Winter 2026/2027 Forecast: An Amplified Pattern Builds Across North America

The win­ter sea­son is the most high-im­pact part of the year, and usu­ally of most in­ter­est to most peo­ple. It also packs the most en­ergy in the weather sys­tems, mak­ing it the most im­pact­ful part of the year in a Super El Niño event.

Below is the very lat­est ECMWF pres­sure anom­aly fore­cast, re­leased in the past few days. This is the win­ter fore­cast for the December-February pe­riod, and it shows a strong El Niño forc­ing at play. The key parts are the deep low-pres­sure zone in the North Pacific and the block­ing high-pres­sure area over Canada.

The fore­cast also shows a high-am­pli­tude pres­sure pat­tern across the south­ern and east­ern United States. This is aligned with a strong Pacific jet stream, the key com­po­nent of a Super El Niño Winter. It’s worth adding that this pe­riod is 4 – 6 months in the fu­ture, but al­ready shows such strong anom­alies.

Such a pres­sure pat­tern trans­lates into a sharp tem­per­a­ture dif­fer­ence be­tween the United States and Canada. You can see above-nor­mal tem­per­a­tures un­der the high-pres­sure zone in Canada and the north­ern United States, also in­clud­ing the U.S. West Coast, and the Northeast.

The deep south­ern low-pres­sure sys­tems al­low cooler-than-nor­mal tem­per­a­tures across Texas, the Gulf Coast, and the Southeast. This is pri­mar­ily dri­ven by an ac­tive south­ern jet stream zone, which brings per­sis­tent cloud cover and rain.

As we move into mid-late win­ter, there are some in­di­ca­tions of the Super El Niño pat­tern go­ing into over­drive. The February fore­cast be­low shows a much deeper pres­sure wave over the United States for mid-late Winter, with the whole at­mos­pheric wave shifted east.

This north­ern block­ing is forc­ing a deep, highly ac­tive low-pres­sure zone from the Pacific straight through the cen­tral, south­ern, and east­ern United States. In such a con­fig­u­ra­tion, this sig­nals a po­ten­tially colder-than-nor­mal mid and late win­ter sea­son over parts of the United States.

The cor­re­spond­ing tem­per­a­ture fore­cast for February shows a sur­pris­ing cold anom­aly over a large part of the United States, reach­ing up into south­west­ern Canada. This would make for a very in­ter­est­ing Winter sea­son, as it could lead to po­ten­tially good snow­storm sce­nar­ios across the cen­tral, east­ern, and north­east­ern United States.

I do have to add that this is just a re­cent de­vel­op­ing trend, so it’s not a fixed fore­cast by any means. But it is a cal­cu­la­tion based on real oceanic and at­mos­pheric con­di­tions. I will fur­ther mon­i­tor this de­vel­op­ment, es­pe­cially since it is gain­ing sup­port from other long-range pre­dic­tions.

A Super El Niño pat­tern also strongly im­pacts the snow­fall po­ten­tial. When an ac­tive south­ern jet stream over­laps pe­ri­odic cold air drops from Canada, it can shift the pri­mary win­ter storm cor­ri­dor far­ther south than usual.

Below is the lat­est ECMWF snow­fall fore­cast, and it shows ex­actly this de­vel­op­ment. We can see re­duced snow to­tals across the Northern United States and south­ern Canada, but above-nor­mal snow­fall po­ten­tial across the Central and Eastern United States, and south­east­ern Canada.

Good snow­fall po­ten­tial is in­di­cated across the Southwestern and Southeastern U.S., the Central Plains, parts of the Midwest, East, and into the Mid-Atlantic.

Areas across Canada, the Pacific Northwest, and the north­ern Great Lakes show be­low-av­er­age snow­fall anom­alies, dri­ven by warmer tem­per­a­tures and a north­ern ridge that pushes the po­lar air away.

The most im­por­tant thing for snow­fall is where the mois­ture flow in­ter­sects cold air. This fore­cast setup el­e­vates the po­ten­tial for ma­jor win­ter storms, ice events, and heavy snow­fall from the Southern Plains and Mid-Atlantic into the in­te­rior Northeast. But it does rely on hav­ing a cold enough air mass to work with.

Europe Winter 2026/2027: Westerly Pattern Favors a Milder Season

Below is the very lat­est win­ter pat­tern fore­cast by ECMWF. It shows the highly am­pli­fied pres­sure over North America, also im­pact­ing the weather down­stream. The main fea­ture for Europe comes from the low-pres­sure area ex­ten­sion into its north­west­ern and north­ern parts.

This cre­ates a strong pres­sure dif­fer­ence from north to south, boost­ing the west­erly flow into Europe from the Atlantic, while also al­low­ing some northerly flow over the north and north­west.

This is re­flected in the lat­est December-February tem­per­a­ture fore­cast be­low, where you can see mostly above-nor­mal tem­per­a­tures dur­ing the win­ter sea­son. This is the re­sult of a dom­i­nant mild west­erly flow. It still al­lows some northerly flow into the UK and Ireland, as low-pres­sure ar­eas move from the Atlantic into north­ern Europe.

The main snow­fall po­ten­tial in such a pat­tern comes with in­di­vid­ual low-pres­sure sys­tems mov­ing fur­ther in­land and to the south, bring­ing along a more northerly flow. The over­all sea­sonal pat­tern is not that fa­vor­able for broad snow­fall over Europe. The ex­cep­tions are the north and north­east, and the cen­tral higher el­e­va­tions.

I will write full in-depth fore­cast ar­ti­cles for Fall and Winter 2026/2027 over the United States, Canada, and Europe, once all the nec­es­sary data is avail­able.

Scientific Research Used in this Article

Super El Niño Development: Formation Mechanism for 2015/16 Super El Niño — Chen et al. (2017).

Extreme El Niño Teleconnections: A Distinct and Reproducible Teleconnection Pattern over North America dur­ing Extreme El Niño Events — Beniche et al. (2024).

Westerly Wind Bursts: The Essential Role of Westerly Wind Bursts in ENSO Dynamics and Extreme Events Quantified in Model Wind Stress Shaving” Experiments — Yu and Fedorov (2022).

Forecast and analy­sis im­ages in this ar­ti­cle are from ECMWF, CyclonicWX, weath­er­mod­els.com, and WeatherBell (using a com­mer­cial li­cense).

El Niño dri­ving the August weather shift: Super El Niño Drives an August Weather Shift as Fall and Winter Signals Strengthen

New ocean anom­alies emerg­ing: A New Ocean Anomaly Joins Super El Niño, Reshaping the Winter 2026/2027 Forecast

We will keep you up­dated on the global weather pat­tern de­vel­op­ment, so book­mark our page. Also, if you have seen this ar­ti­cle in the Google App (Discover) feed, click the like (♥) or the star but­ton there to see more of our fore­casts and our lat­est ar­ti­cles on weather and na­ture in gen­eral.

System Prompts

platform.claude.com

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Loading

Client Challenge

support.mozilla.org

A re­quired part of this site could­n’t load. This may be due to a browser ex­ten­sion, net­work is­sues, or browser set­tings. Please check your con­nec­tion, dis­able any ad block­ers, or try us­ing a dif­fer­ent browser.

Abdominal Fat Predicts Heart Disease Risk Better Than BMI - American College of Cardiology

www.acc.org

Contact: Olivia Walther, owalther@acc.org ,

WASHINGTON (Aug 11, 2026) -

The size of a per­son’s mid­sec­tion is a bet­ter in­di­ca­tor of car­dio­vas­cu­lar dis­ease risk when com­pared to their body mass in­dex (BMI) alone, ac­cord­ing to a study pub­lished in JACC, the flag­ship jour­nal of the American College of Cardiology. BMI has tra­di­tion­ally been used to de­ter­mine over­weight or obe­sity, com­mon risk fac­tors for heart dis­ease, but this study shows that not ac­count­ing for waist cir­cum­fer­ence (WC) or waist-to-hip ra­tio (WHR) can lead to mis­clas­si­fi­ca­tion of car­dio­vas­cu­lar dis­ease risk.

Indeed, it ap­pears that WC and WHR re­clas­sify risk de­fined by tra­di­tional BMI thresh­olds,” said Michael J. Blaha, MD, MPH, se­nior au­thor of the study and di­rec­tor of clin­i­cal re­search at Johns Hopkins Ciccarone Center for the Prevention of Cardiovascular Disease. We saw in­di­vid­u­als with clin­i­cally de­ter­mined nor­mal weight who had el­e­vated cen­tral adi­pos­ity and high WHR, as­so­ci­at­ing them with higher risk across most out­comes.”

BMI is cal­cu­lated by di­vid­ing weight in kilo­grams by height in me­ters squared and is a com­mon prac­tice for di­ag­nos­ing obe­sity. However, BMI can­not ac­count for dis­tri­b­u­tion of body fat. Studies have shown that vis­ceral fat, which is fat that sur­rounds the in­ter­nal or­gans in the ab­dom­i­nal area, is as­so­ci­ated with chronic dis­eases like heart dis­ease and di­a­betes, while sub­cu­ta­neous fat, which is lo­cated di­rectly un­der the skin, is not as strongly as­so­ci­ated.

Despite ev­i­dence link­ing cen­tral adi­pos­ity, the ac­cu­mu­la­tion of both vis­ceral and sub­cu­ta­neous fat in the ab­dom­i­nal area, to ad­verse car­dio­vas­cu­lar health out­comes, BMI is still the most used met­ric to de­ter­mine over­weight and obe­sity and fu­ture car­dio­vas­cu­lar risk.

This study ex­am­ines whether adding WC and WHR to BMI bet­ter pre­dicts fu­ture car­dio­vas­cu­lar risk. Researchers from the Cross Cohort Collaboration looked at over 260,000 peo­ple over an av­er­age of 20 years who had ei­ther WC or WHR data and at least one of nine out­comes: time to first fa­tal and non-fa­tal my­ocar­dial in­farc­tion, fa­tal and non-fa­tal stroke, heart fail­ure, atrial fib­ril­la­tion, to­tal coro­nary heart dis­ease (CHD), to­tal car­dio­vas­cu­lar dis­ease (CVD), CHD mor­tal­ity, CVD mor­tal­ity and/​or all-cause mor­tal­ity.

In in­di­vid­u­als with nor­mal weight as de­ter­mined by BMI, 5% had high WC and 18% had high WHR; among those with over­weight, 39% had high WC and 40% had high WHR. Among those with obe­sity, 9% had low WC and 45% had low WHR.

Those in­di­vid­u­als with nor­mal weight or over­weight and clin­i­cally de­fined high WC or WHR were as­so­ci­ated with a 15% - 50% greater risk for most of the nine stud­ied out­comes. Those with obe­sity and low WC were not found to be as­so­ci­ated with a sig­nif­i­cantly dif­fer­ent risk of out­comes com­pared with those who had nor­mal weight and low WC, ex­cept for all-cause mor­tal­ity, for which risk was sig­nif­i­cantly lower.

Our find­ings em­pha­size the crit­i­cal role of iden­ti­fy­ing el­e­vated cen­tral adi­pos­ity, even in in­di­vid­u­als with a nor­mal BMI or with a BMI in the over­weight range. Relying solely on BMI may re­sult in mis­clas­si­fi­ca­tion of car­dio­vas­cu­lar risk across a wide range of car­dio­vas­cu­lar out­comes,” Zeina A. Dardari, PhD, MS, lead au­thor of the study, said. We en­cour­age clin­i­cians to con­sider cen­tral adi­pos­ity dis­tri­b­u­tion across the en­tire BMI spec­trum when eval­u­at­ing car­dio­vas­cu­lar risk in pri­mary pre­ven­tion set­tings.”

Limitations of the study in­clude that it did not have mea­sures of phys­i­cal ac­tiv­ity, diet or ge­netic obe­sity risk, which have all been shown to play a role in the de­vel­op­ment of CVD. It also in­cluded only one as­sess­ment of WC and WHR, which could limit un­der­stand­ing of how changes in cen­tral fat ac­cu­mu­la­tion over time in­flu­ences CVD risk.

It is time to aban­don a sole fo­cus on body mass in­dex,” said Harlan M. Krumholz, MD, SM, MACC, FAHA, Editor-in-Chief of JACC and the Harold H. Hines, Jr Professor at the Yale School of Medicine. This enor­mously im­por­tant study, based on data from hun­dreds of thou­sands of par­tic­i­pants in large-scale co­hort stud­ies, au­thor­i­ta­tively shows that waist cir­cum­fer­ence and waist-to-hip ra­tio pro­vide crit­i­cal in­for­ma­tion about car­dio­vas­cu­lar risk, even among peo­ple with a BMI con­sid­ered nor­mal. Where fat is dis­trib­uted mat­ters, and these sim­ple mea­sures should be part of rou­tine car­dio­vas­cu­lar risk as­sess­ment.”

For an em­bar­goed copy of the study Risk Reclassification Beyond BMI by Waist Circumference and Waist-to-Hip Ratio Across Nine Cardiovascular Outcomes: Results from the Cross-Cohort Collaboration,” con­tact JACC Media Relations Manager Olivia Walther at owalther@acc.org.

The American College of Cardiology (ACC) is a global leader ded­i­cated to trans­form­ing car­dio­vas­cu­lar care and im­prov­ing heart health for all. For more than 75 years, the ACC has em­pow­ered a com­mu­nity of over 60,000 car­dio­vas­cu­lar pro­fes­sion­als across more than 140 coun­tries with cut­ting-edge ed­u­ca­tion and ad­vo­cacy, rig­or­ous pro­fes­sional cre­den­tials, and trusted clin­i­cal guid­ance. From its world-class JACC Journals and NCDR reg­istries to its Accreditation Services, global net­work of Chapters and Sections, and CardioSmart pa­tient ini­tia­tives, the College is com­mit­ted to cre­at­ing a world where sci­ence, knowl­edge and in­no­va­tion op­ti­mize pa­tient care and out­comes. Learn more at www.ACC.org or con­nect on so­cial me­dia at @ACCinTouch.

The ACCs JACC Journals rank among the top car­dio­vas­cu­lar jour­nals in the world for sci­en­tific im­pact. The flag­ship jour­nal, the Journal of the American College of Cardiology (JACC) — and spe­cialty jour­nals con­sist­ing of JACC: Advances, JACC: Asia, JACC: Basic to Translational Science, JACC: CardioOncology, JACC: Cardiovascular Imaging, JACC: Cardiovascular Interventions, JACC: Case Reports, JACC: Clinical Electrophysiology and JACC: Heart Failure — pride them­selves on pub­lish­ing the top peer-re­viewed re­search on all as­pects of car­dio­vas­cu­lar dis­ease. Learn more at JACC.org.

###

< Back to Listings

Software Engineering fundamentals matter more than ever

rhonabwy.com

The man­i­fes­ta­tion of my im­poster syn­drome, for me and to­day, is what does it mean to be a soft­ware en­gi­neer. There’s a lot more noise than sig­nal on the Internet about agen­tic en­gi­neer­ing, what can be ac­com­plished, and its im­pli­ca­tions for the fu­ture. The ti­tle I chose rather gives it away; it’s about choos­ing — care­fully — all the things you need to choose when you’re solv­ing the puz­zles of soft­ware and sys­tems de­vel­op­ment.

Beyond the hype and junkie-like mar­ket­ing fer­vor of major model providers”, I found a re­ally in­ter­est­ing power tool with the com­bi­na­tion of har­ness and mod­els. I’ve been fol­low­ing how friends have been us­ing these tools, and learn­ing a ton. As usual, the folks do­ing some of the most amaz­ing things aren’t the ones crow­ing about it, or post­ing nar­ra­tive blurbs in so­cial me­dia about the end of this pro­fes­sion. They found a big damn stick”, they’re ex­plor­ing the ful­crum points, and they’re rep­re­sent­ing good ole Archimedes to lean into that lever, mov­ing the world.

In the past year, agent har­nesses crossed the can it be done” ru­bi­con. (yep, jump­ing for­ward to Roman ref­er­ences). I would not have wished for the world’s knowl­edge to taken with­out per­mis­sion and re­gard, or the lu­natics to delve into eco­nomic self-deal­ing that’s peanut but­ter­ing over the oth­er­wise tank­ing US econ­omy. The eco­nomic mod­els for the large mod­els aren’t vi­able from any re­port that I’ve seen, but the ca­pa­bil­ity is­n’t go­ing away. Instead it’s shrink­ing (fast!). Open weight mod­els are mak­ing (beefy) per­sonal com­put­ers quite ca­pa­ble of do­ing the same. They’re not quite as ef­fec­tive, but the delta in time and ca­pa­bil­ity is­n’t large.

Can it be done” is only the start, not even close to the ma­jor­ity a soft­ware or sys­tem en­gi­neer’s pro­fes­sion. It’s like when I learned to weld in my 20’s — I quickly cre­ated things that I could­n’t lift or even get out the door of the shop. (thank good­ness for acety­lene torches). What I learned then is I think the same les­son, dif­fer­ent medium: How some­thing goes to­gether is what makes all the dif­fer­ence.

If you use agen­tic har­nesses to de­velop with a bit of fore­sight, you can get not only it works”, but also it’s testable” (I heav­ily lean into the prompt develop with red/​green TDD). But it’s not very solid much above that. The seams — how your code works, it’s API, and how it fits with other soft­ware — are as much art as sci­ence. It is made up of sub­jec­tive mea­sures that rely on your view­point (and ex­pe­ri­ence, as well as your guesses) for both what you’re solv­ing now, and how to live with that soft­ware over a long pe­riod of time.

Making soft­ware de­bug­gable, main­tain­able, lay­ered, and com­pos­able — that’s still quite a trick. Quite a lot of that work re­quires ex­ten­sive, thought­ful rea­son­ing. And that’s where the LLMs to­day, even the lead­ing edge of the capability” from fron­tier mod­els, fall short.

It helps to know that LLMs don’t reason”. They pre­dict, and the mod­els them­selves are ef­fec­tively writ­ten hu­man knowl­edge com­pressed. So if it’s in hu­man knowl­edge that was en­coded, it can echo out the hu­man rea­son­ing. For agents fo­cused on soft­ware de­vel­op­ment, those rea­son­ing traces are the pre­cious data for the mod­els. There’s a very ap­proach­able re­search pa­per on just how bad LLMS are at rea­son­ing called The Illusion of Thinking. There is some re­search I’m fol­low­ing that in­cludes pre­dic­tion of re­sults of ac­tions, but that’s not what we have to­day with cod­ing agents. It’s a pretty dif­fer­ent — and fas­ci­nat­ing — area of re­search. If you want to ex­plore, go dig­ging on how JEPA mod­els” work, LeWorld Model, and re­cent talks by Yann LeCun.

While you’re work­ing with LLMs though, there’s still a ton of ways to make them more ef­fec­tive. I think there’s a lot of ad­vances that we haven’t even re­ally be­gun to eek out. Most of the wins I’m see­ing to­day in­volve pro­vid­ing it good, con­cise data to work from, at the right time, and pro­vid­ing de­ter­min­is­tic val­i­da­tion tool­ing with nat­ural lan­guage feed­back that the LLM can use to cor­rect it­self. The amaz­ing thing to me is­n’t that it can pre­dict what to write, but that it is ef­fec­tive at tool call­ing and fol­low­ing in­struc­tions.

Another down­side of this in­struc­tion fol­low­ing is what Simon Willison coined as the lethal tri­fecta. Basically — LLM mod­els can’t dis­tin­guish be­tween good ad­vice and bad. They’re foun­da­tion­ally in­ca­pable of al­ways and con­sis­tently pre­vent­ing prompt in­jec­tion at­tacks. Alignment work”, safety har­nesses, and sand­boxes all help to add bar­ri­ers against the worst, but there are fun­da­men­tal gaps. And frankly, some­thing that tire­lessly fol­lows in­struc­tions with­out hav­ing good rea­son­ing is night­mare fuel to me.

Another down­side of this in­struc­tion fol­low­ing is what Simon Willison coined as the lethal tri­fecta. Basically — LLM mod­els can’t dis­tin­guish be­tween good ad­vice and bad. They’re foun­da­tion­ally in­ca­pable of al­ways and con­sis­tently pre­vent­ing prompt in­jec­tion at­tacks. Alignment work”, safety har­nesses, and sand­boxes all help to add bar­ri­ers against the worst, but there are fun­da­men­tal gaps. And frankly, some­thing that tire­lessly fol­lows in­struc­tions with­out hav­ing good rea­son­ing is night­mare fuel to me.

I hope there will be near-term nad­vances in how mod­els are trained to in­clude the equiv­a­lent of rea­son­ing traces for post-train­ing (RLHF). In my ideal fu­ture, these in­clude more of what it means to build soft­ware with clean in­ter­faces, that’s de­bug­gable, and and that’s main­tain­able as a key part of the re­in­forced eval­u­a­tions. Carefully re­view­ing, plan­ning, and fix­ing the seams of soft­ware (and sys­tems) is one of the crit­i­cal skills we both can, and need to, em­ploy when de­vel­op­ing soft­ware — with or with­out agen­tic as­sis­tants. And as I see the wave of Oh, that’s easy to im­ple­ment…” and peo­ple reach­ing for clankers to get it done, I think it’s more im­por­tant than ever.

It’s a great time to be fol­low­ing folks who write, talk, and share about the craft of soft­ware, and how we can be bet­ter ar­ti­sans. Hopefully it’s ob­vi­ous, but there’s never a sin­gle an­swer — a panacea. It’s al­ways about trade­offs, choos­ing what makes sense for the prob­lem at hand. With the help of a lot of great minds shar­ing their thoughts — both now and go­ing back decades — we have a great tool chest for this work. It’s about pick­ing, or re­work­ing to move to a bet­ter choice, the right ab­strac­tions. It’s core is man­ag­ing the cog­ni­tive load, learn­ing which pieces we need to be sta­ble, and where we want our work to flex and bend (and how).

And yes, I wrote the damn em-dashes my­self. I’m too in love with a re­cur­sive par­en­thet­i­cal in my writ­ing, and I like a break from com­mas and paren­the­ses.

And yes, I wrote the damn em-dashes my­self. I’m too in love with a re­cur­sive par­en­thet­i­cal in my writ­ing, and I like a break from com­mas and paren­the­ses.

Sorry...

scholar.google.com

We’re sorry…

… but your com­puter or net­work may be send­ing au­to­mated queries. To pro­tect our users, we can’t process your re­quest right now.

Asynchronous I/O in DuckDB: Work, Thread, Work

duckdb.org

Pedro Holanda

2026 – 07-31

· 21 min

TL;DR: Starting with v2.0, sched­uled for fall 2026, DuckDB will sup­port asyn­chro­nous reads of Parquet and CSV files. This can sig­nif­i­cantly speed up queries when syn­chro­nous I/O does not sat­u­rate the avail­able band­width, as is typ­i­cal in EC2/S3 com­pute-stor­age se­tups.

It does­n’t mat­ter how fast query op­er­a­tors are in a data­base sys­tem if we can’t pull in the data quickly. For most of DuckDB’s his­tory, how­ever, this prob­lem was largely avoided by prun­ing data early. By push­ing down fil­ters and pro­jec­tions, we could en­sure that we only read what we ac­tu­ally needed.

This worked par­tic­u­larly well be­cause DuckDB pri­mar­ily ran lo­cally, with its main use case be­ing as a quick-draw data­base en­gine for query­ing data di­rectly from your ma­chine’s SSD. We could split the data into sev­eral par­ti­tions, such as row groups for Parquet files or fixed-size buffers for CSV files, and load them with low la­tency and high band­width. As a re­sult, the main bot­tle­necks were else­where: sub­queries, joins, ag­gre­ga­tions, and so on. The ac­tual data ac­cess path re­ceived less at­ten­tion be­cause syn­chro­nous ac­cess was per­fectly suit­able for this use case.

As usual, things changed. We re­al­ized that DuckDB’s ar­chi­tec­ture was a great fit for query­ing re­motely stored large-scale datasets, such as data lakes (e.g., DuckLake). Since May this year, we can even run DuckDB as a server us­ing the Quack pro­to­col. The orig­i­nal ex­pec­ta­tion of data files sit­ting on a lo­cal SSD there­fore no longer al­ways holds.

The prac­ti­cal im­pli­ca­tion of these changes is that many cur­rent DuckDB se­tups need to trans­fer files from re­mote stor­age to the ma­chine that will ac­tu­ally process them. For data lakes, for ex­am­ple, a typ­i­cal setup is to store the data in blob stor­age, such as S3, and process it on an EC2 ma­chine in the same re­gion. In this setup, la­tency and band­width play a much more sig­nif­i­cant role. If we can­not is­sue enough con­cur­rent re­quests to use the avail­able net­work band­width, per­for­mance can suf­fer dras­ti­cally, with threads spend­ing a large amount of their time wait­ing for re­mote reads in­stead of pro­cess­ing data.

As an ex­am­ple, let’s con­sider a sim­ple query over a re­mote Parquet file. For sim­plic­ity, let’s as­sume we only have a sin­gle thread ex­e­cut­ing.

FROM read­_­par­quet(‘s3://​bucket/​file.par­quet’);

A Parquet scan is par­ti­tioned into row-group-based jobs, with each job con­tain­ing one or more fetch tasks that is­sue byte-range re­quests. With syn­chro­nous I/O, the worker thread will be blocked, wait­ing for the data to ar­rive at the ma­chine be­fore per­form­ing ac­tual work, such as de­cod­ing, ag­gre­gat­ing, and so on. You can see a vi­sual de­pic­tion in the fig­ure be­low, where the thread is blocked from do­ing any work while it waits for the read to fin­ish.

Synchronous read

To ad­dress this, we have been im­ple­ment­ing asyn­chro­nous I/O pipelines in DuckDB. They are cur­rently im­ple­mented for Parquet and for un­com­pressed, seek­able UTF-8 CSV files, with sup­port for other for­mats, such as DuckDB’s na­tive for­mat and JSON, still to come. In the re­main­der of this blog post, we will give a sim­ple ex­pla­na­tion of how asyn­chro­nous I/O is im­ple­mented in DuckDB and pro­vide bench­marks for both Parquet and CSV files.

If you would like to try asyn­chro­nous I/O now, you can do so by us­ing DuckDB’s v2.0.0-dev pre­view builds. Asynchronous I/O will be used by de­fault from the next ma­jor DuckDB ver­sion, v2.0, re­leased in the fall.

If you would like to try asyn­chro­nous I/O now, you can do so by us­ing DuckDB’s v2.0.0-dev pre­view builds. Asynchronous I/O will be used by de­fault from the next ma­jor DuckDB ver­sion, v2.0, re­leased in the fall.

Asynchronous I/O

The con­cep­tual idea of asyn­chro­nous I/O is rather sim­ple: we should be able to start an I/O op­er­a­tion with­out block­ing the worker thread that re­quested it. Applied to our Parquet ex­am­ple, the same pic­ture would look like the fol­low­ing:

Asynchronous read

In this ex­am­ple, we have two ASYNC threads and one reg­u­lar worker thread. The ASYNC threads keep fetch tasks in flight while the worker thread de­codes data. During the ini­tial warm-up, the scan task parks, leav­ing the worker thread free to run other pipeline tasks. Once the first job is ready, fetch­ing and de­cod­ing can over­lap.

In DuckDB, we im­ple­mented some­thing sim­i­lar. We have two sep­a­rate thread pools:

REGULAR — This pool con­tains our worker threads (by de­fault: one for each avail­able CPU thread). These are the ones that do real work, like de­cod­ing, joins, and ag­gre­ga­tions. They pri­or­i­tize reg­u­lar work but can also per­form I/O tasks when idle.

ASYNC — A pool of threads in­tended for asyn­chro­nous tasks, pri­mar­ily block­ing I/O.

The main rea­son we have these two dif­fer­ent pools is that, for re­mote I/O, these threads can spend al­most all their time blocked, wait­ing for an HTTP re­sponse, for ex­am­ple, and hence have very lit­tle CPU uti­liza­tion. Because of that, we have many more ASYNC work­ers than sys­tem threads, with the de­fault set­ting be­ing 4 * sys­tem threads and the to­tal be­ing capped at 256.

It’s of ut­most im­por­tance to keep as many of our ASYNC threads busy as pos­si­ble. To en­sure that, we im­ple­ment a read-ahead strat­egy in­stead of is­su­ing reads on de­mand. This means sched­ul­ing fetch tasks ahead of what our reg­u­lar worker threads cur­rently need.

One thing we need to be at­ten­tive to is that read-ahead buys through­put by hold­ing mem­ory. If de­cod­ing is slow and the net­work is fast, prefetched data can ac­cu­mu­late and lead to out-of-mem­ory is­sues. To mit­i­gate this, we also im­ple­mented asyn­chro­nous mem­ory gov­er­nance. Both read-ahead and mem­ory gov­er­nance will be ex­plained in more de­tail in the fol­low­ing sec­tions.

Read-Ahead Queue

The idea of read-ahead is also straight­for­ward. Instead of start­ing a read at the ex­act mo­ment a reg­u­lar worker needs the data, we sched­ule fetch tasks for work that lies fur­ther ahead. While a reg­u­lar worker de­codes the cur­rent job, the ASYNC threads are al­ready pulling in data for the next jobs. The goal is to keep enough fetch tasks in flight to hide the la­tency of re­mote stor­age.

The jobs are units of work that can be sched­uled and processed in­de­pen­dently, and they can be dif­fer­ent de­pend­ing on the un­der­ly­ing file for­mat. For a Parquet file, a job is one row group of one file. For a CSV file, a job is a scan bound­ary that gen­er­ally cov­ers a fixed byte range within the file.

A Parquet job might be bro­ken down into mul­ti­ple fetch tasks de­pend­ing on the query pro­jec­tions, fil­ter push­downs, phys­i­cal col­umn lo­ca­tions, and which nearby byte ranges can be com­bined. The two fetch tasks in the fig­ure be­low are il­lus­tra­tive, as their ex­act group­ing and sizes de­pend on the file and query.

For CSV files, we don’t have the same gran­u­lar­ity of in­for­ma­tion as we do for Parquet files. A job’s fetch tasks load its start­ing buffer if it is not al­ready in mem­ory and, when the scan bound­ary reaches the end of that buffer, the fol­low­ing buffer as well (e.g., to han­dle lines that are split across two buffers).

Jobs

Filling the queue re­quires no ded­i­cated pro­ducer thread. Any reg­u­lar worker that comes look­ing for scan work first tops up the queue as far as it is al­lowed to. The limit is ei­ther given by a user-spec­i­fied num­ber of slots or by a mem­ory bud­get. If there is space, a job and its fetch tasks are cre­ated. The fetch tasks are sched­uled im­me­di­ately on the ASYNC pool, while the job is ad­mit­ted to the read-ahead queue in batch or­der.

ASYNC threads ex­e­cute in­di­vid­ual fetch tasks in­de­pen­dently of the job queue’s claim or­der. Fetch tasks from the same job can run con­cur­rently, al­though no par­tic­u­lar as­sign­ment to ASYNC threads is guar­an­teed. All fetch tasks of a job share a count­down, and the fetch task that brings it to zero com­pletes the job’s I/O.

A worker thread claims the old­est job in the queue and checks that count­down. If I/O is done, the worker starts de­cod­ing the job. If not, it parks the scan task and is free to run other pipeline tasks. The last fetch task then un­blocks the scan task, which may re­sume on any reg­u­lar worker.

Claiming the job also im­me­di­ately frees a queue slot, al­low­ing any reg­u­lar worker look­ing for scan work to pro­duce a re­place­ment job at the back of the queue. The fig­ure be­low de­picts this cy­cle:

Read-ahead cy­cle

Memory Management

Keeping more fetch tasks in flight con­sumes more mem­ory. To de­ter­mine a bud­get and avoid out-of-mem­ory is­sues, we in­tro­duced the read­_a­head­_depth con­fig­u­ra­tion op­tion. It can have three types of val­ues:

-1 (default): un­lim­ited depth, bounded by mem­ory.

N > 0: at most N jobs ahead, with no mem­ory bud­get.

0: read-ahead is off, each scan task sched­ules I/O only for its own job.

To con­fig­ure it, use the SET clause, e.g.:

SET read­_a­head­_depth = 5;

In the de­fault mode, the bud­get is ne­go­ti­ated with the tem­po­rary mem­ory man­ager, which is the same man­ager that splits mem­ory be­tween con­cur­rent joins, sorts, and win­dow op­er­a­tors. When there is a lot of mem­ory pres­sure, for ex­am­ple, be­cause an op­er­a­tor is us­ing a large amount of mem­ory, queue reser­va­tions might in­stantly be over bud­get. In prac­tice, this means that the queue will only al­low one job at a time, and the scan will be­have close to a syn­chro­nous scan.

When the mem­ory-heavy op­er­a­tor fin­ishes, the mem­ory man­ager has more bud­get to give, and the queue fills back up.

Benchmarks

Asynchronous I/O should have the largest ef­fect when the la­tency of syn­chro­nous re­quests pre­vents us from us­ing the avail­able re­mote band­width. To mea­sure this ef­fect, we ran TPC-H Query 6 at SF100, with the data sit­ting on S3, and com­pared the re­sults against DuckDB v1.5.5, our lat­est sta­ble re­lease. The SF100 dataset was writ­ten as a sin­gle file per table for both the Parquet and CSV bench­marks, with the lineitem table con­tain­ing 600,037,902 rows.

For com­pute, we used an EC2 r7i.16xlarge ma­chine (64 vC­PUs and 512 GB of RAM), with both the ma­chine and the S3 bucket with the data lo­cated in the same re­gion. We ex­e­cuted the query five times and re­port the mean ex­e­cu­tion time. The files were never cached (i.e., SET en­able_ex­ter­nal_­file_­cache = false;), mean­ing that every ex­e­cu­tion read the data straight from S3.

Parquet

The Parquet file is ap­prox­i­mately 22 GB and has around 4,880 row groups, with each row group con­tain­ing ap­prox­i­mately 122,880 rows. With asyn­chro­nous I/O, the mean run­time drops from 8.230 sec­onds to 2.844 sec­onds, mak­ing the query al­most faster.

Below we also show the net­work through­put over the course of the query:

Network through­put

In it, we run DuckDB v1.5.5 and two vari­a­tions of DuckDB v2.0.0-dev. One with the read-ahead depth de­ter­mined by the mem­ory gov­er­nor, and one tuned for this ma­chine, where we cap the read-ahead at 64 in-flight jobs and ad­just the I/O set­tings (SET async_threads = 48; SET http_re­tries = 8; SET http_retry_wait­_ms = 50; SET http_retry_back­off = 2). We can see that v2.0.0-dev uses the avail­able band­width much more ef­fec­tively, ap­proach­ing the net­work limit and reach­ing it at sev­eral points. The tuned ver­sion goes fur­ther. With fewer, hot­ter con­nec­tions and cheap re­tries, the through­put vari­ance drops to a min­i­mum and the 25 Gbit/s net­work stays al­most fully sat­u­rated. Its query time was 2.227 sec­onds, re­duc­ing the run­time of the un­tuned v2.0.0-dev run by 21.7% and mak­ing it about 3.7× faster than DuckDB v1.5.5. In com­par­i­son, v1.5.5 stays around 5 Gbit/s be­cause its syn­chro­nous reads do not keep enough re­quests in flight to sat­u­rate the net­work.

One other de­tail worth not­ing is that, in all ex­per­i­ments, a few hun­dred mil­lisec­onds pass be­fore the first bump in net­work traf­fic, fol­lowed by an­other few hun­dred mil­lisec­onds be­fore the main data trans­fer be­gins. The first gap is the time needed to open a DuckDB con­nec­tion, per­form the first TLS hand­shake, and open the file. The bump cor­re­sponds to down­load­ing the file footer, while the sec­ond gap comes from pro­cess­ing the in­for­ma­tion in the footer be­fore ex­e­cut­ing the query. We be­lieve this is an area we can in­ves­ti­gate and op­ti­mize fur­ther be­fore the v2.0 re­lease.

We sam­pled the NICs re­ceived-byte counter every 50 ms and cal­cu­lated the through­put from the change in bytes be­tween sam­ples. We in­de­pen­dently con­firmed that the ma­chine can ac­cess the net­work at 25 Gbit/s with both a DuckDB full-file read and the s5cmd tool.

We sam­pled the NICs re­ceived-byte counter every 50 ms and cal­cu­lated the through­put from the change in bytes be­tween sam­ples. We in­de­pen­dently con­firmed that the ma­chine can ac­cess the net­work at 25 Gbit/s with both a DuckDB full-file read and the s5cmd tool.

Local Disk

Remote stor­age is the main tar­get for asyn­chro­nous I/O, but cold lo­cal reads give us a use­ful con­trast. To mea­sure them, we ran TPC-H Query 6 over the SF100 Parquet file, this time with the file sit­ting on the lo­cal disk of a MacBook Pro (Apple M4 Max, 14 cores, and 36 GB of RAM). Since the ben­e­fit of asyn­chro­nous I/O on lo­cal disks comes from cold reads, we cleared the OS caches (with the ma­cOS purge com­mand) be­tween runs, mak­ing sure every ex­e­cu­tion ac­tu­ally read the file from disk.

We can see that, for cold runs, asyn­chro­nous I/O is ap­prox­i­mately 1.5× faster, re­duc­ing run­time by about 33%. The per­for­mance dif­fer­ence is much smaller than in the cases pre­sented above, due to the SSD hav­ing much lower la­tency and much higher band­width than the EC2/S3 net­work. For hot runs, the dif­fer­ence is neg­li­gi­ble, as there is no disk ac­cess hap­pen­ing if data is prop­erly cached.

Small Files

Partitioned datasets are a par­tic­u­larly rel­e­vant use case here, as par­ti­tion­ing can eas­ily spread the data across many small files. To see how asyn­chro­nous I/O be­haves in this setup, we also per­formed a Parquet run us­ing the same TPC-H SF100 dataset. Instead of us­ing one file, we gen­er­ated 976 files with five row groups each. Each file con­tains ap­prox­i­mately 615,000 rows and is around 22 MB in size.

We can see that v2.0.0-dev de­liv­ers a sim­i­lar per­for­mance im­prove­ment here as it does for the sin­gle-file bench­mark, run­ning around faster. This shows that read-ahead can also par­al­lelize across mul­ti­ple files with­out be­com­ing bot­tle­necked by open­ing files or fetch­ing their foot­ers.

Large Row Groups

We also wanted to see what hap­pens at the other ex­treme, when a Parquet file has only a few very large row groups. For this ex­per­i­ment, we gen­er­ated six ver­sions of the same TPC-H SF100 lineitem table as a sin­gle file, chang­ing only the re­quested row group (RG) size, and ran Q6 us­ing DuckDB v2.0.0-dev. The table be­low re­ports the run­time for each ver­sion.

At first, larger row groups de­crease query times. As we in­crease the row-group size, re­quest la­tency is amor­tized over much larger trans­fers. However, be­yond a cer­tain point, the avail­able par­al­lelism starts to fall. A row group is DuckDB’s unit of Parquet scan par­al­lelism, so ide­ally a scan should ex­pose at least one row group per sys­tem thread. On this 64-vCPU ma­chine, the ver­sion with 64 row groups pro­vides ex­actly that and fin­ishes in 2.27 sec­onds, while the fastest run comes from the ver­sion with 306 row groups, at 2.11 sec­onds.

However, with fewer row groups than threads, we lose par­al­lelism and can no longer sat­u­rate the net­work. For Q6, the pro­jec­tions and the phys­i­cal lo­ca­tion of the columns re­sult in two fetch re­quests per row group. Four row groups there­fore ex­pose only about eight con­cur­rent S3 streams, rais­ing the run­time to 8.01 sec­onds. For the largest con­fig­u­ra­tion, the file con­tains a sin­gle row group, and its I/O is ef­fec­tively re­duced to two gi­ant streams, push­ing the run­time to 25.26 sec­onds. This hap­pens even though bet­ter com­pres­sion makes the file a lit­tle over half the size of the ver­sion with 4,886 row groups. In this case, the ex­tra band­width re­quired by smaller row groups is cheaper than the par­al­lelism lost with ex­tremely large ones.

Concurrent Queries

The ef­fect be­comes even clearer when sev­eral queries run at the same time. For this ex­per­i­ment, we ran TPC-H queries 1, 6, 9, and 18 con­cur­rently against the same SF100 Parquet dataset on S3, us­ing a sin­gle DuckDB in­stance. We picked these queries be­cause they cover a mix of scans, ag­gre­ga­tions, and joins, with dif­fer­ent CPU and mem­ory re­quire­ments. We re­peated the ex­per­i­ment with the de­fault mem­ory con­fig­u­ra­tion and with mem­ory lim­its of 16 GB and 8 GB. The to­tal run­time is the wall-clock time un­til all four queries fin­ish. We re­port the av­er­age and peak CPU uti­liza­tion (number of cores uti­lized), the peak band­width (bw.) and the peak res­i­dent set size (RSS).

With the de­fault mem­ory con­fig­u­ra­tion, DuckDB v1.5.5 keeps an av­er­age of only about 6 of the 64 cores busy. In other words, around 90% of the ma­chine sits idle wait­ing for syn­chro­nous S3 reads. DuckDB v2.0.0-dev, on the other hand, av­er­ages 48 busy cores, reaches all 64 at its peak, and sat­u­rates the 25 Gbit/s net­work. As a re­sult, all four queries fin­ish in less than half the time.

The mem­ory re­sults are also in­ter­est­ing. As we lower the limit, the mem­ory gov­er­nor re­duces the read-ahead back­log, while mem­ory-heavy op­er­a­tors such as those in Q18 can spill to disk. This low­ers the peak phys­i­cal mem­ory used by the DuckDB process (i.e., RSS) of DuckDB v2.0.0-dev from 20.1 GB with the de­fault con­fig­u­ra­tion to 15.7 GB with a 16 GB limit and 11.5 GB with an 8 GB limit. The ad­di­tional spilling and re­duced read-ahead also lower av­er­age CPU uti­liza­tion and in­crease the run­time, but v2.0.0-dev con­tin­ues to sat­u­rate the net­work and re­mains sub­stan­tially faster than v1.5.5 in both cases.

One might no­tice that the 8 GB re­sult still peaks at 11.5 GB of RSS. This is be­cause je­mal­loc keeps re­cently freed pages res­i­dent for about one sec­ond so they can be reused. This mem­ory is no longer counted by DuckDB’s mem­ory man­ager, and v1.5.5 shows the same al­lo­ca­tor be­hav­ior.

One might no­tice that the 8 GB re­sult still peaks at 11.5 GB of RSS. This is be­cause je­mal­loc keeps re­cently freed pages res­i­dent for about one sec­ond so they can be reused. This mem­ory is no longer counted by DuckDB’s mem­ory man­ager, and v1.5.5 shows the same al­lo­ca­tor be­hav­ior.

CSV

The ef­fect is larger on CSV files. The CSV file is 80.89 GB, and asyn­chro­nous I/O re­duces the mean run­time from 878 sec­onds to just 45 sec­onds, mak­ing the query al­most 20× faster. CSV is row-ori­ented, so the scan trans­fers sub­stan­tially more data and per­forms fixed-size buffer reads, mak­ing con­cur­rent re­mote reads es­pe­cially valu­able.

As in the other ex­per­i­ments, we used the de­fault mem­ory-gov­erned read-ahead depth, so this run was not tuned to keep the 25 Gbit/s net­work sat­u­rated on av­er­age.

Conclusion

In this blog post, we pre­sented the re­cent work on asyn­chro­nous I/O for Parquet and CSV files. Most of its ben­e­fit comes from ac­cess­ing re­mote data, but cold lo­cal reads can also ben­e­fit, al­beit less. Next, we plan to add async reads for JSON and DuckDB-native files, as these are the two other for­mats most rel­e­vant to DuckDB core. Formats that live in out-of-tree ex­ten­sions are not on the roadmap yet. We will also in­ves­ti­gate io_ur­ing, Linux’s asyn­chro­nous I/O in­ter­face, which could re­duce sys­tem-call over­head and the num­ber of threads blocked on I/O. If it proves ben­e­fi­cial in prac­tice, we will in­te­grate it into DuckDB. One im­por­tant thing to no­tice is that any of the data lake so­lu­tions sup­ported in DuckDB can al­ready ben­e­fit from asyn­chro­nous I/O au­to­mat­i­cally as long as the un­der­ly­ing data for­mat is Parquet (or CSV, if you are brave enough).

Recent Posts

Thank You for 40 000 Stars on GitHub

The DuckDB team

Announcing DuckDB 1.5.5

The DuckDB team

Announcing DuckDB 1.4.5 LTS (Andium)

The DuckDB team

Language Models Under Pedagogically-Controlled Knowledge Exposure

littlelearner-ll.github.io

Talk to LittleLearner

The hosted 5B model, live in your browser. Open in a new tab ↗ if the chat does­n’t load be­low.

A con­trolled sand­box for study­ing how mod­els ac­quire knowl­edge

Modern LMs are trained on every­thing at once, so it is hard to tell whether a new skill was learned or merely elicited. We con­strain the train­ing dis­tri­b­u­tion it­self: an 88B-token cor­pus fil­tered to the U.S. el­e­men­tary-school cur­ricu­lum, with mod­els trained from scratch on it and matched un­fil­tered con­trols.

Dataset

LittleCurriculum

An 88B-token cor­pus dis­tilled from FineWeb-Edu through a five-stage fil­ter­ing pipeline aligned with Common Core stan­dards (K–5). Concepts, facts, and vo­cab­u­lary taught above Grade 5 are ex­plic­itly ex­cluded.

Models

LittleLearner

Three scales (0.6B / 1.3B / 5B) trained from scratch on LittleCurriculum: chat­table mod­els with an in­ter­pretable knowl­edge bound­ary. Each ships with a matched Unfiltered con­trol for clean com­par­i­son.

Findings

Elicitation, not ac­qui­si­tion

In our ex­per­i­ments, scal­ing, SFT+GRPO post-train­ing, and in-con­text learn­ing am­plify what the cur­ricu­lum taught, but none mean­ing­fully im­proves out-of-scope per­for­mance, in­di­cat­ing that the pre­train­ing fil­ter sets the ef­fec­tive ca­pa­bil­ity ceil­ing.

Model check­points

LittleLearner at three scales (0.6B / 1.3B / 5B), each with a matched Unfiltered con­trol shar­ing its ar­chi­tec­ture, to­kens, and recipe.

Base: the pre­trained model. GRPO: math spe­cial­ists post-trained on MathCAMPS; re­sponses may ex­hibit a ten­dency to­ward math-ori­ented out­put. Chatty: vari­ants tuned for gen­eral chat be­hav­ior.

Capability stays in­side the cur­ricu­lum

Can stan­dard in­ter­ven­tions push a model past what its pre­train­ing data taught it? With the bound­ary un­der ex­per­i­men­tal con­trol, we can ask cleanly. In our ex­per­i­ments, each in­ter­ven­tion am­pli­fies in-scope abil­ity; none of them mean­ing­fully im­proves out-of-scope per­for­mance.

Scaling

Scaling model size im­proves per­for­mance within the mod­el’s con­trolled knowl­edge ex­po­sure and ex­tends mod­estly to prob­lems along the same learn­ing tra­jec­tory, but yields lit­tle im­prove­ment on prob­lems re­quir­ing more ad­vanced ca­pa­bil­i­ties out­side the ex­po­sure.

MathCAMPS ac­cu­racy by grade, across model size

Post-training

Post-training through GRPO sig­nif­i­cantly boosts in-scope K–5 ca­pa­bil­i­ties, but fails to re­cover out-of-scope be­yond-K–5 ca­pa­bil­i­ties, even when train­ing with out-of-scope data.

Post-training am­pli­fies K–5, not the be­yond-K–5 gap

In-context learn­ing

In-context learn­ing with the prompts we test does not un­lock new rea­son­ing ca­pa­bil­i­ties in be­yond-K–5 for our trained 5B LittleLearner.

Accuracy by prompt­ing con­di­tion

What will you teach it?

Because LittleLearner’s train­ing ex­po­sure is ex­plic­itly spec­i­fied, be­hav­ioral and rep­re­sen­ta­tional changes can be re­lated di­rectly to the con­cepts you in­tro­duce. Three di­rec­tions we’re ex­cited about:

01

RL & dis­cov­ery

Can RL cre­ate ca­pa­bil­ity?

The prior is re­stricted to K–5, so ca­pa­bil­i­ties that emerge un­der RL can be at­trib­uted to the RL process it­self. A tractable proxy for re­ward-dri­ven dis­cov­ery.

02

Continual learn­ing

Watch a con­cept be­ing learned

Introduce neg­a­tive num­bers and mea­sure sam­ple ef­fi­ciency, re­ten­tion, and in­ter­fer­ence. Or probe be­hav­ior near the bound­ary: does it an­swer, ab­stain, or hal­lu­ci­nate?

03

Educational sci­ence

Machine vs. child learn­ers

Specified ex­po­sure en­ables con­trolled hu­man-model com­par­i­son. Do mod­els and chil­dren need sim­i­lar ex­po­sure to learn frac­tions, or make sim­i­lar er­rors on word prob­lems?

Your turn

Bring your own ques­tion

A known bound­ary turns your idea into a clean ex­per­i­ment!

If you find this work use­ful

Please cite our pa­per:

@misc{littlelearner2026, ti­tle={Lit­tle­Learner: Language Models Under Pedagogically-Controlled Knowledge Exposure}, au­thor={Fan­fei Li and Jana Zeller and Manuel Prada-Corral and Thaddäus Wiedemer and Prasanna Mayilvahanan and Ryan Cotterell and Wieland Brendel}, year={2026}, eprint={2608.13545}, archivePre­fix={arXiv}, pri­ma­ryClass={cs.CL}, url={https://​arxiv.org/​abs/​2608.13545} }

Just a moment...

www.science.org

To add this web app to your iOS home screen tap the share button and select "Add to the Home Screen".

10HN is also available as an iOS App

If you visit 10HN only rarely, check out the the best articles from the past week.

Visit pancik.com for more.