Use apply:
select
f.id, children.p.value('./speed[1]','float')
from files as f
outer apply (select cast(f.data as xml) as xml) as x
outer apply x.xml.nodes('root/children') as children(p)
where
f.id in (1005,51,968,991,992,993,969,970) and
children.p.value('./name[1]','nvarchar(max)') = 'something'