Infelizmente, o MySQL não é muito bom em otimizar subconsultas com IN. Isso é da documentação do MySQL :
Tente usar um JOIN em vez disso.
Como o MySQL funciona de dentro para fora, às vezes você pode enganar o MySQL envolvendo a subconsulta dentro de outra subconsulta assim:
SELECT COUNT(*) FROM table_name WHERE device_id IN
(SELECT * FROM (SELECT DISTINCT device_id FROM table_name WHERE NAME = 'SOME_PARA') tmp)
Aqui está a solução JOIN:
SELECT COUNT(DISTINCT t2.id) FROM table_name t1
JOIN table_name t2
ON t2.device_id = t1.device_id
WHERE t1.NAME = 'SOME_PARA'
Observe que eu começo de dentro e saio também.