Provavelmente sou burro por perguntar isso, mas estou me perguntando por que o SQL Server preferiria o bloqueio de página sobre o bloqueio de linha ao executar consultas DML.
No meu cenário específico, estou vendo em vários gráficos de deadlock que as consultas que devem bloquear 400-500 linhas estão optando por bloquear a página - inserindo o deadlock em primeiro lugar. Observe que não desativei os bloqueios de linha em nossos índices. Além disso, eu realmente não acho que estou perdendo índices, pois a única sugestão vinda do SQL é do tipo "criar um índice não clusterizado em todas as colunas desta tabela".
Para ser claro: não estou pedindo ajuda para resolver nossos impasses (pelo menos ainda não), só quero entender se está faltando algo para tentar prever como o SQL Server vai se comportar.
Há muitas razões pelas quais os bloqueios de página podem ser usados em vez de bloqueios de linha, mas a resposta mais básica é o gerenciamento de memória. Bloqueios de 400-500 linhas podem ser muito menos atraentes do que bloquear um número menor de páginas para realizar a mesma tarefa.
Também é possível que a forma como a consulta é escrita, ou a forma como o índice é projetado, seja responsável pelo tipo de bloqueio obtido.
Veja meus posts aqui para mais detalhes:
Estimativas ruins e bloqueio
Ordem e bloqueio das colunas da chave de índice