better kernel selection