Panels cache terminology- what's the difference between caching by argument vs. by context?
Disclaimer: I usually find that the setup is simple enough that the distinction isn't necessary, thus I must admit my practical experience is limited, and I could be wrong below.

Arguments, are based on the URL. node/5 gets cached separately from node/7, because 5 is different from 7. node/5/7, if you where to have such a path, is yet another cache.

Contexts, are generally derived from Arguments, and in the examples above, it's very likely that the caches would be exactly the same, regardless of which cache option one would pick. However, Contexts, can also come from (at least) three other sources, Relationships, manually defined ones, and the special case, the logged in user.

If your context is both a node from the URL, and a user pulled from an entity reference on the node, then your context has two unique entities, or two contexts, but only one argument.

So one chooses Context or Argument depending on whether you want the cache to take any "extra" contexts into question, or not.


  But in Views, the option is called argument input and the value I chose was from context. So am I dealing with an argument or a context?


Unfortunately the terminology isn't exactly the same between the two modules. Panels calls dynamic pieces of the URL arguments, and it creates contexts from those. Views, means something closer to a function argument, when it refers to arguments, and in this particular case, it will derive the argument from a context, passed in by Panels.