Architectures for AI: hardware and software for efficient processing