Edit: in an attempt to avoid this question being closed as a reference request (though I still would appreciate references!), I will give a few general, non-link-only questions for concreteness. I would accept an answer for any of these, but the more the better.
Is the A12 in-order, or out-of-order?
How many instructions can it retire per cycle?
How many pipeline stages does it have?
What sort of cache hierarchy does it have?
Does it architecturally resemble modern Intel processors, and if not, what are the major differences?
Original question: There is a lot of publicly available documentation about how the current mainstream Intel core design works (Pentium Pro and all its descendants). Both Intel’s own optimization manuals, and descriptions published by WikiChip and Agner Fog.
Any curious person can learn what the pipeline stages are, what each part of the core does, and so on.
I can’t find anything similar for the Apple Ax series. Does it exist?
Apple is an ARM architectural licensee and they have developed several generations of ARM64 chips. A resource for some of the micro-architectural detail on their chips is the Cyclone LLVM scheduler model analyzed here. This is upstreamed into LLVM and also released by Apple as open source. I think the Cyclone model covers all their chips.
Other resources are WikiChip and Wikipedia which aggregate information and cite sources. The Apple patent file provides other information. Benchmarks and reviews are available but not at the level of Agner.
First, Wikipedia says the A12 is OOO but a Big Little chip. Big (Vortex) on the A12 decodes 7-wide and Little (Tempest) is 3-Wide with 13 and 5 execution ports respectively. I can't find retire rates.
I have tried looking up ABI Stability documentation on swift.org. I did not find it that useful as I am a very novice iOS Developer. I don't even understand what problem are they trying to solve and why is it really important for the maturity of the language?
I found an issue in an Electronics Design Automation proprietary language and decided to look it up to see how things were handled in SystemVerilog and found that the LRM just skated over a topic that needs clarification.
I tried to find a blog or email on the IEEE and Accellera sites but failed.
My question is: how do I contact that IEE group working on SystemVerilog, to indicate an issue that could do with clarification in their spec?
Thanks :-)
I am a member of the IEEE working group.
The IEEE has a bug tracking system that you visit as a guest to see if the issue is already reported. You can also post your issue on a popular SystemVerilog forum like https://verificationacademy.com/forums/systemverilog or https://www.quora.com/topic/SystemVerilog and there is usually someone for the group there to respond.
I'm looking at some old code that relies on
Microsoft.Practices.EnterpriseLibrary.Caching
As far as I can tell, the namespace doesn't exist in the latest version of the EnterpriseLibrary. Is this correct? If so, when did the components get discontinued?
Enterprise Library 6.0 removed the Caching block, as well as the Security block and Cryptography.
All caching should now be performed with System.Runtime.Caching.
A good read is the Enterprise Library 6 patterns and practices free book.
Enterprise Library 6 Developers Guide
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I've been looking at some open-source XMPP servers, and am familiar with the official page http://xmpp.org/. But thus far I've not found anything in between "The Extensible Messaging and Presence Protocol (XMPP) is an open technology for real-time communication" and a list of XEP specifications. For instance articles explaining the basics and terminology - stanzas, IQ, presence, etc, etc. Even the Wikipedia page misses this, unsurprisingly the open-source projects assume you know these things before you start digging into the code.
Is there a good, (semi-)official set of tutorials on this? Do I need to be looking for Jabber resources rather than XMPP?
Amongst other things, I'd hope to see diagrams for use-cases and flow, not just dry protocol text. I know books on XMPP exist, but generally anything in a book is available in some form online too.
This is probably way too basic, but at least it's technical: https://web.archive.org/web/20170916193014/http://www.adarshr.com/fun-with-xmpp-and-google-talk and the second part, https://web.archive.org/web/20171005104211/http://www.adarshr.com:80/fun-with-xmpp-and-google-talk-part-2
It explains what stanzas are, what types are available and stuff.
Here is what got me startet on XMPP Development:
A good book: XMPP The Definivie Guide
A mature Java API. I've chosen the Smack Library from Ignite Realtime and used the groovy language with a buch of small scripts to learn the basics.
Later i developed a plugin for the OpenFire XMPP Server. There are some tutorials and a forum on their site as well. I think that both the smack and the openfire api's are easy to learn.
If you are not into java: The book referes to the SkeekXMPP Python library and it uses it to create some examples (echo bot, ...).
As others have said, the specifications are a good introduction. It's true that they are technical in nature, and worded to be precise - but they are really some of the best specifications I've seen for any protocol, especially the latest RFCs (6120 and 6121) which clarify some of the grey areas in the originals.
E.g. you mention wanting to know the definition of a stanza, it's explained (with examples) in 6120 section 8.
If you have any feedback on how the specifications can be made clearer, then say so on the XMPP mailing list, where all feedback is considered for the next drafts of the specifications.
If the specifications are really too much for you (I appreciate some people like more pictures than I do), do consider the book (whether in paper or digital form) - it's designed exactly as an easy introduction to both the core specifications and the most common extensions, and written by people who help develop and implement them.
The RFCs (listed on the Wikipedia page) should be a quite good introduction to this topic.
For example: RFC3920: Extensible Messaging and Presence Protocol (XMPP): Core
This might be an old question, but I just wanted to keep the process I used in order to learn XMPP.
A few years ago, a few friends of mine and I were learning about how to leverage XMPP, and understanding how it fits into larger piece is quite a tedious task. I highly recommend starting off by reading the wikipedia page of XMPP:
http://en.wikipedia.org/wiki/XMPP
You'll be surprised how many people aren't able to answer questions about XMPP which are the most fundamental.
I also highly recommend reading this article:
http://www.infoworld.com/article/2682116/application-development/xmpp-rises-to-face-simple-standard.html
It'll give you a sense of the motivation behind XMPP, it's history, and it's protocols that used to be on par with it.
From there, it'll be best to read the sources of the wikipedia page to give a more indept understanding of any features you might be interested in with XMPP.
Use the xmpp asmack library from
http://beem-project.com/projects/beem/files
download asmack-android-7-beem-jingle.jar
and documentation of
http://www.igniterealtime.org/downloads/index.jsp
Hope it helps others like it helped me
Install openfire on server side and use qsmack on android side.