9. The method of claim 1 , wherein the factors considered for selecting the target processing unit for executing the operator of the database query include an estimate of a current amount of work on each of the first processing unit and the second processing unit.
1. A method for executing database queries, comprising: receiving a database query for execution by a database system, the database system configured to process database queries using a first processing unit including one or more central processing units (CPUs) and a second processing unit including one or more single instruction multiple thread (SIMT) based processing units; generating, by the database system, an intermediate executable representation including code for processing the database query, the processing performed by executing operators representing portions of computations for processing the database query; selecting, by the database system, a target processing unit for executing an operator of the database query based on factors comprising a data type of values stored in a column processed by the query; responsive to selection of the second processing unit for executing the operator of the database query: generating native code from the intermediate executable representation, wherein the native code is optimized for execution on the second processing unit; compiling the native code to executable code; and executing the executable code by the database system using the second processing unit; and sending the result of execution of the query.