Yes,earmarks tend to allocate funds effectively because people know ahead of time that a certain amount of funds are already spoken for and are not up for grabs.This causes all other requests to be extra efficient and use every penny in the best way possible considering the restrictions put on it.
No, earmarks do not typically allocate spending effectively. They typically allocate spending for specific constituents only at the expense of others. They work as kickbacks so state and congressional representatives can basically buy off their voters and continue to keep their jobs. The fact is, they are simply a form of legalized bribery on the citizenry.