A peripheral processing device (90, 90') comprising: a physical interface for connecting said processing device to a host computing device through a communications protocol; a local controller (50-A, 50) connected to local memory across an internal bus and being arranged to provide input/output access to data stored on said peripheral processing device to said host computing device through a file system application programming interface, API; a neural processor (92, 92') comprising at least one network processing engine for processing a layer of a neural network according to a network configuration; a memory for at least temporarily storing network configuration information for said at least one network processing engine, input image information for processing by one of said at least one network processing engine, intermediate image information produced by said at least one network processing engine and output information produced by said at least one network processing engine, characterized by: said local controller being arranged to receive said network configuration information for the or each network processing engine through a file system API write command; said local controller being arranged to receive said input image information for processing by said neural processor through a file system API write command; and said local controller being arranged to write said output information to said local memory for retrieval by said host computing device through a file system API read command. a physical interface for connecting said processing device to a host computing device through a communications protocol; a local controller (50-A, 50) connected to local memory across an internal bus and being arranged to provide input/output access to data stored on said peripheral processing device to said host computing device through a file system application programming interface, API; a neural processor (92, 92') comprising at least one network processing engine for processing a layer of a neural network according to a network configuration; a memory for at least temporarily storing network configuration information for said at least one network processing engine, input image information for processing by one of said at least one network processing engine, intermediate image information produced by said at least one network processing engine and output information produced by said at least one network processing engine, characterized by: said local controller being arranged to receive said network configuration information for the or each network processing engine through a file system API write command; said local controller being arranged to receive said input image information for processing by said neural processor through a file system API write command; and said local controller being arranged to write said output information to said local memory for retrieval by said host computing device through a file system API read command. said local controller being arranged to receive said network configuration information for the or each network processing engine through a file system API write command; said local controller being arranged to receive said input image information for processing by said neural processor through a file system API write command; and said local controller being arranged to write said output information to said local memory for retrieval by said host computing device through a file system API read command.