Opened 5 years ago

Last modified 4 years ago

#1628 confirmed enhancement

Enable padding by default

Reported by: Erik Schnetter Owned by:
Priority: major Milestone:
Component: EinsteinToolkit thorn Version: development version
Keywords: Cc:


Enable padded allocation in Carpet by default.

Attachments (0)

Change History (2)

comment:1 Changed 4 years ago by Ian Hinder

Status: newconfirmed

What would be needed to make this happen? It could improve performance on architectures with a large vector size, as long as the memory allocation takes note of the ghost size, and aligns the first evolved point to the vector size. I seem to remember that unaligned memory access on Intel systems is fairly fast, so maybe the benefit of padding applies to non-Intel systems only, in which case this enhancement might be less interesting?

comment:2 Changed 4 years ago by Erik Schnetter

It seems that padding is currently broken, in the sense that simulation results differ. To make this happen, someone needs to build with padding enabled, and then track down where the differences come from.

Aligning the first non-ghost point is straightforward.

Unaligned memory access is fast on Intel system, but it requires additional instructions. Since McLachlan is limited by instruction cache size, ensuring aligned access may have a larger benefit than one would otherwise expect. Also, with AVX instructions, unaligned access has become more expensive.

Modify Ticket

Change Properties
Set your email in Preferences
as confirmed The ticket will remain with no owner.
Next status will be 'review'.
as The resolution will be set.
to The owner will be changed from (none) to the specified user.
The owner will be changed from (none) to anonymous.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.